Módulo: Mongoid::Association::Embedded::EmbedsMany::Buildable
- Incluye:
- Threaded::Lifecycle
- Incluido en:
- Mongoid::Association::Embedded::EmbedsMany
- Definido en:
- lib/mongoid/associación/embebidos/embeds_many/buildable.rb
Overview
Clase builder para asociaciones embeds_many.
Resumen del método de instancia colapsar
-
#compilar(base, objeto, _tipo = nil, campos_seleccionados = nil) ⇒ Array<Document ] Los documentos.
Compila el documento a partir de los atributos utilizando los metadatos de asociación provistos.
Detalles del método de instancia
#build(base, object, _tipo = nil, campos_seleccionados = nil) ⇒ Array<Document ] Los documentos.
Compila el documento a partir de los atributos utilizando los metadatos de asociación proporcionados. Se instancia a través de la fábrica para asegurarse de que las subclases y la asignación se utilicen si es adecuado. Este caso devolverá varios documentos.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# Archivo 'lib/mongoid/association/embedded/embeds_many/buildable.rb', línea 28 def compilar(base, Objeto, _type = nulo, selected_fields = nulo) return [] si Objeto.blank? return Objeto si Objeto.primero.is_a?(Documento) docs = [] Objeto.cada hacer |attrs| si _¿cargando? && base.¿persistió? docs.push(Fábrica.execute_from_db(klass, attrs, nulo, selected_fields, execute_callbacks: false)) else docs.push(Fábrica.compilar(klass, attrs)) end end docs end |