Clase: Mongoid::Association::One

Hereda:
Apoderado Mostrar todo
Definido en:
lib/mongoid/association/one.rb

Overview

Esta es la superclase para relaciones uno a uno y define el comportamiento común de esos proxies.

Resumen constante

Constantes heredadas de Proxy

Proxy::KEEPER_METHODS

Resumen del atributo de la instancia

Atributos heredados de Proxy

#_association, #_base, #_target

Resumen del método de instancia colapsar

Métodos heredados de Proxy

apply_ordering, #extend_proxies, #initialize, #klass, #reset_unloaded, #substitutable

Métodos incluidos de Marshalable

#marshal_dump, #marshal_load

Detalles del constructor

Esta clase hereda un constructor de Mongoid::Association::Proxy

Detalles del método de instancia

#__evolve_object_id__Objeto

Evoluciona el documento proxy a un id de objeto.

Ejemplos:

Desarrollar el documento proxy.

proxy.__evolve_object_id__

Devuelve:

  • (objeto)

    Identificación del documento proxy.



49
50
51
# Archivo 'lib/mongoid/association/one.rb', línea 49

def __evolve_object_id__
  _objetivo._id
end

#claroverdadero | falso

Borrar esta relación: lo mismo que llamar a #delete en el documento.

Ejemplos:

Borrar la relación.

relation.clear

Devuelve:

  • (true | false)

    Si la eliminación se realizó correctamente.



17
18
19
# Archivo 'lib/mongoid/association/one.rb', línea 17

def borrar
  _objetivo.borrar
end

#in_memoryArray<Document>

Obtén todos los documentos en la relación que están cargados en la memoria.

Ejemplos:

Obtener los documentos en memoria.

relation.in_memory

Devuelve:

  • (Array<documento>)

    Los documentos en la memoria.



27
28
29
# Archivo 'lib/mongoid/association/one.rb', línea 27

def en memoria
  [ _objetivo ]
end

#respond_to?(nombre, include_private = false) ⇒ true | false

Dado que method_missing se anula, también deberíamos anular esto.

Ejemplos:

¿El proxy responde al método?

relation.respond_to?(:name)

Parámetros:

  • Nombre (Símbolo)

    El nombre del método.

Devuelve:

  • (true | false)

    Si el proxy responde al método.



39
40
41
# Archivo 'lib/mongoid/association/one.rb', línea 39

def respond_to?(Nombre, incluir_privado = false)
  _objetivo.respond_to?(Nombre, incluir_privado) || super
end