Module: Mongoid::Association::Embedded::EmbedsOne::Buildable
- Includes:
- Threaded::Lifecycle
- Included in:
- Mongoid::Association::Embedded::EmbedsOne
- Defined in:
- lib/mongoid/association/embedded/embeds_one/buildable.rb
Overview
Builder class for embeds_one associations.
Instance Method Summary collapse
-
#build(base, object, _type = nil, selected_fields = nil) ⇒ Document
Builds the document out of the attributes using the provided association metadata on the association.
Instance Method Details
#build(base, object, _type = nil, selected_fields = nil) ⇒ Document
Builds the document out of the attributes using the provided association metadata on the association. Instantiates through the factory in order to make sure subclasses and allocation are used if fitting.
28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/mongoid/association/embedded/embeds_one/buildable.rb', line 28 def build(base, object, _type = nil, selected_fields = nil) if object.is_a?(Hash) if _loading? && base.persisted? Factory.execute_from_db(klass, object, nil, selected_fields, execute_callbacks: false) else Factory.build(klass, object) end else clear_associated(object) object end end |