class ActiveMongoid::Associations::RecordRelation::Bindings::In
Public Instance Methods
bind_one()
click to toggle source
# File lib/active_mongoid/associations/record_relation/bindings/in.rb, line 7 def bind_one check_inverse!(target) bind_foreign_key(base, record_id(target)) bind_polymorphic_inverse_type(base, target.class.name) unless _binding? _binding do if inverse = __metadata__.inverse(target) if set_base_metadata if base.referenced_many_documents? target.__send__(inverse).push(base) else target.set_document_relation(inverse, base) end end end end end end
unbind_one()
click to toggle source
# File lib/active_mongoid/associations/record_relation/bindings/in.rb, line 26 def unbind_one inverse = __metadata__.inverse(target) bind_foreign_key(base, nil) bind_polymorphic_inverse_type(base, nil) unless _binding? _binding do if inverse set_base_metadata if base.referenced_many_documents? target.__send__(inverse).delete(base) else target.set_document_relation(inverse, nil) end end end end end