# File lib/datastax_rails/cql/create_column_family.rb, line 12 def primary_key(pk) @primary_key = pk self end
class DatastaxRails::Cql::CreateColumnFamily
CQL generation for CREATE COLUMNFAMILY
Public Class Methods
new(cf_name)
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 5 def initialize(cf_name) @cf_name = cf_name @columns = {} @storage_parameters = [] @primary_key = 'id' end
Public Instance Methods
columns(columns)
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 22 def columns(columns) @columns.merge! columns self end
comment=(comment)
click to toggle source
Migration helpers
# File lib/datastax_rails/cql/create_column_family.rb, line 28 def comment=(comment) with('comment' => comment) end
comparator=(comp)
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 32 def comparator=(comp) with('comparator' => comp) end
default_validation=(val)
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 36 def default_validation=(val) with('default_validation' => val) end
primary_key(pk)
click to toggle source
to_cql()
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 40 def to_cql stmt = "CREATE COLUMNFAMILY #{@cf_name} (" @columns.each do |name, type| stmt << "#{name} #{type}, " end stmt << "PRIMARY KEY (#{@primary_key}))" unless @storage_parameters.empty? stmt << ' WITH ' stmt << @storage_parameters.flatten.join(' AND ') end stmt end
with(with)
click to toggle source
# File lib/datastax_rails/cql/create_column_family.rb, line 17 def with(with) @storage_parameters << with self end