Module: Mongoid::Relations::Accessors::ClassMethods

Defined in:
lib/mongoid_sortable_relation/accessors.rb

Instance Method Summary collapse

Instance Method Details

#setter(name, metadata) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/mongoid_sortable_relation/accessors.rb', line 29

def setter(name, )
  re_define_method("#{name}=") do |object|
    without_autobuild do
      sort_related_items(object, name, ) if .sortable?
      if value = get_relation(name, , object)
        set_relation(name, value.substitute(object.substitutable))
      else
        __build__(name, object.substitutable, )
      end
    end
  end
  self
end