class Mongoid::Relations::Binding
Public Instance Methods
bind_from_relational_parent(doc)
click to toggle source
# File lib/mongoid-multiple-polymorphic/mongoid/relations/binding.rb, line 23 def bind_from_relational_parent(doc) check_inverse!(doc) bind_foreign_key(doc, record_id(base)) bind_polymorphic_type(doc, base.class.name) bind_inverse(doc, base) bind_inverse_of_field(doc, metadata.name) end
bind_inverse_of_field(doc, name)
click to toggle source
Bind the inverse of field, when in a polymorphic relation.
@api private
@example Bind the inverse of field.
binding.bind_inverse_of_field(doc)
@param [ Document ] doc The document to bind. @param [ String ] name The name of the relation.
@since 3.0.0
# File lib/mongoid-multiple-polymorphic/mongoid/relations/binding.rb, line 15 def bind_inverse_of_field(doc, name) if inverse_metadata = metadata.inverse_metadata(doc) if setter = inverse_metadata.inverse_of_field_setter doc.you_must(setter, name) end end end
unbind_from_relational_parent(doc)
click to toggle source
# File lib/mongoid-multiple-polymorphic/mongoid/relations/binding.rb, line 31 def unbind_from_relational_parent(doc) check_inverse!(doc) bind_foreign_key(doc, nil) bind_polymorphic_type(doc, nil) bind_inverse(doc, nil) bind_inverse_of_field(doc, nil) end