Sha256: 478dcaa98c8198b8e58664aa9013cf2f3a7aa50a0b1c9071529af2da663e3d2a
Contents?: true
Size: 887 Bytes
Versions: 33
Compression:
Stored size: 887 Bytes
Contents
# encoding: utf-8 module Mongoid module Relations module Builders module Embedded class One < Builder # Builds the document out of the attributes using the provided # metadata on the relation. Instantiates through the factory in order # to make sure subclasses and allocation are used if fitting. # # @example Build the document. # Builder.new(meta, attrs).build # # @param [ String ] type Not used in this context. # # @return [ Document ] A single document. def build(_type = nil) return object unless object.is_a?(Hash) if _loading? && base.persisted? Factory.from_db(klass, object) else Factory.build(klass, object) end end end end end end end
Version data entries
33 entries across 29 versions & 3 rubygems