Clase: Mongoid::Association::Embedded::EmbedsOne::Proxy
- Hereda:
- Uno Mostrar todo
- Definido en:
- lib/mongoid/asociación/incrustado/embeds_one/proxy.rb
Overview
Proxy transparente para asociaciones embeds_one. Se devuelve una instancia de esta clase al llamar al método getter de asociación en el documento padre. Esta clase hereda de Mongoid::Association::Proxy y reenvía la mayoría de sus métodos al objetivo de la asociación, es decir, al documento hijo.
Colapso delresumen constante
- VALID_OPTIONS =
Las opciones válidas al definir esta asociación.
%i[ autoconstrucción como Cascade_callbacks cíclico store_as ].freeze
Constantes heredadas de Proxy
Resumen del atributo de la instancia
Atributos heredados de Proxy
#_association, #_base, #_target
Resumen del método de clase colapsar
-
.eager_loader(asociaciones, docs) ⇒ Mongoid::Association::Embedded::Eager
Devuelve el cargador entusiasta para esta asociación.
-
.empotrado? ⇒ verdad
Devuelve verdadero si la asociación está incrustada.
-
.ruta(documento) ⇒ Mongoid::Atomic::Paths::Embedded::One
Obtén la calculadora de rutas para el documento suministrado.
Resumen del método de instancia colapsar
-
#inicializar(base, destino, asociación) ⇒ Proxy
constructor
Crea una nueva asociación embeds_one.
-
#sustituir(reemplazo) ⇒ Documento | nulo
Sustituye los documentos de destino proporcionados por el documento existente en la asociación.
Métodos heredados de One
#__evolve_object_id__, #clear, #in_memory, #respond_to?
Métodos heredados de Proxy
apply_ordering, #extend_proxies, #klass, #reset_unloaded, #substitutable
Métodos incluidos de Marshalable
Detalles del constructor
#inicializar(base, destino, asociación) ⇒ Proxy
Crea una nueva asociación embeds_one.
33 34 35 36 37 38 39 40 41 42 |
# Archivo 'lib/mongoid/association/embedded/embeds_one/proxy.rb', línea 33 def inicializar(base, Objetivo, asociación) super hacer characterize_one(_objetivo) bind_one characterize_one(_objetivo) update_attributes_hash(_objetivo) _objetivo.guardar si ¿persistente? _base._reset_memoized_descendants! end end |
Detalles del método de clase
.eager_loader(asociaciones, docs) ⇒ Mongoid::Asociación::Incrustado::Eager
Devuelve el cargador entusiasta para esta asociación.
190 191 192 |
# Archivo 'lib/mongoid/association/embedded/embeds_one/proxy.rb', línea 190 def eager_loader(asociaciones, docs) Entusiasta.Nuevo(asociaciones, docs) end |
.¿incrustado? ⇒ true
Devuelve true si la asociación es una asociación embebida. En este caso, siempre es verdadero.
201 202 203 |
# Archivo 'lib/mongoid/association/embedded/embeds_one/proxy.rb', línea 201 def true end |
Detalles del método de instancia
#sustituto(reemplazo) ⇒ Documento | nulo
Sustituye los documentos de destino proporcionados por el documento existente en la asociación.
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# Archivo 'lib/mongoid/association/embedded/embeds_one/proxy.rb', línea 53 def sustituir(sustitución) return sí mismo si sustitución == sí mismo si ¿_asignando? _base.add_atomic_unset(_objetivo) a menos que sustitución else update_target_when_not_assigning(sustitución) end unbind_one return nulo si replace_with_nil_document(sustitución) reemplazar_con(sustitución) sí mismo end |