Module: ArrayAssociation::ClassMethods
- Defined in:
- lib/array_association.rb
Instance Method Summary collapse
Instance Method Details
#array_column(column, collection, options) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/array_association.rb', line 22 def array_column(column, collection, ) define_method collection do [:class].send(:where, id: send(column)) end define_method "#{column}=" do |value| ids = Utils.normalize_integer_array(value) write_attribute(column, ids) end define_method "#{collection}=" do |values| ids = Array.wrap(values).map(&:id) send "#{column}=", ids end end |