Module: CassandraModel::DataModelling
- Defined in:
- lib/cassandra_model/data_modelling.rb
Class Method Summary collapse
Instance Method Summary collapse
- #model_data {|inquirer, data_set| ... } ⇒ Object
- #serialized_column(column, serializer) ⇒ Object
- #table_properties=(value) ⇒ Object
Class Method Details
.extended(base) ⇒ Object
4 5 6 |
# File 'lib/cassandra_model/data_modelling.rb', line 4 def self.extended(base) base.send(:include, CompositeRecord) end |
Instance Method Details
#model_data {|inquirer, data_set| ... } ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/cassandra_model/data_modelling.rb', line 12 def model_data inquirer = DataInquirer.new data_set = DataSet.new yield inquirer, data_set self.table = if table_sliced?(data_set) rotating_table(data_set, inquirer) else (table_prefix, inquirer, data_set) end generate_composite_defaults_from_inquirer(inquirer) columns end |
#serialized_column(column, serializer) ⇒ Object
27 28 29 30 31 |
# File 'lib/cassandra_model/data_modelling.rb', line 27 def serialized_column(column, serializer) serialized_column = :"#{column}_data" deferred_column column, on_load: ->(attributes) { serializer.load(attributes[serialized_column]) if attributes[serialized_column] }, on_save: ->(attributes, value) { attributes[serialized_column] = (serializer.dump(value) if value) } end |
#table_properties=(value) ⇒ Object
8 9 10 |
# File 'lib/cassandra_model/data_modelling.rb', line 8 def table_properties=(value) @table_properties = value end |