Clase: Mongoid::Asociación::Referenciado::TieneUno::Proxy
- Hereda:
- Uno Mostrar todo
- Ampliado por:
- Métodos de clase
- Definido en:
- lib/mongoid/asociación/referenciado/tiene_uno/proxy.rb
Overview
Proxy transparente para asociaciones has_one. Se devuelve una instancia de esta clase al llamar al método getter de asociación en el documento en cuestión. Esta clase hereda de Mongoid::Association::Proxy y reenvía la mayoría de sus métodos al destino de la asociación, es decir, el documento de la colección del lado opuesto que debe cargarse.
Definido en el espacio de nombres
Modules: Métodos de clase
Resumen constante
Constantes heredadas de Proxy
Resumen de atributos de instancia
Atributos heredados de Proxy
#_association, #_base, #_target
Colapso del resumen del método de instancia
-
#inicializar(base, destino, asociación) ⇒ Proxy
constructor
Crear una nueva asociación references_one.
-
#anular ⇒ Objeto
Elimina la asociación entre el documento base y el documento de destino eliminando la clave externa y la referencia, dejando huérfano el documento de destino en el proceso.
-
#sustituto(reemplazo) ⇒ Uno
Sustituye el documento de destino suministrado por el documento existente en la asociación.
Métodos incluidos de ClassMethods
Métodos heredados de Uno
#__evolve_object_id__, #borrar, #en_memoria, #responder_a?
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 references_one. Establece la clave externa y la base en el objeto inverso.
43 44 45 46 47 48 49 50 |
# Archivo 'lib/mongoid/association/referenced/has_one/proxy.rb', línea 43 def inicializar(base, destino, asociación) Super hacer aumento_mixto Si klass. && !klass.¿cíclico? characterize_one(_objetivo) bind_one _objetivo.guardar Si ¿persistente? end end |
Detalles del método de instancia
#anular ⇒ Objeto
Elimina la asociación entre el documento base y el documento de destino eliminando la clave externa y la referencia, dejando huérfano el documento de destino en el proceso.
58 59 60 61 |
# Archivo 'lib/mongoid/association/referenced/has_one/proxy.rb', línea 58 def anular unbind_one _objetivo.guardar end |
#sustituto(reemplazo) ⇒ Uno
Sustituye el documento de destino proporcionado por el documento existente en la asociación. Si el nuevo destino es nulo, realiza la eliminación necesaria.
73 74 75 76 |
# Archivo 'lib/mongoid/association/referenced/has_one/proxy.rb', línea 73 def sustituir(sustitución) prepararse para el reemplazo Si yo != sustitución Tiene uno::Apoderado.Nuevo(_base, sustitución, _asociación) Si sustitución end |