Classe: Mongoid::Association::One

Herda:
Proxy
  • Objeto
mostrar tudo
Definido em:
lib/mongoid/association/one.rb

Visão geral

Esta é a superclasse para relações um a um e define o comportamento comum ou esses proxies.

Resumo constante

Constantes herdadas do Proxy

Proxy::KEEPER_METHODS

Resumo do atributo de instância

Atributos herdados do proxy

#_association, #_base, #_target

Recolhimento do Resumo do método de instância

Métodos herdados do Proxy

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

Métodos incluídos noMarshable

.

Detalhes do construtor

Esta classe herda um construtor de Mongoid::Association::Proxy

Detalhes do método de instância

#__evolve_object_id__ ➤ Objeto

Evolua o documento de proxy para um ID de objeto.

Exemplos:

Desenvolver o documento de proxy .

proxy.__evolve_object_id__

Retorna:

  • (Objeto)

    A ID do documento proxy.



49
50
51
# Arquivo 'lib/mongoid/association/one.rb', linha 49

def __evolve_object_id__
  _target._id
end

#cleartrue | false

Limpe esta relação - o mesmo que chamar #delete no documento.

Exemplos:

Limpe a relação.

relation.clear

Retorna:

  • (verdadeiro | falso)

    Se a exclusão for bem-sucedida.



17
18
19
# Arquivo 'lib/mongoid/association/one.rb', linha 17

def Limpar
  _target.excluir
end

#in_memory ➤ Array<Document>

Obtenha todos os documentos da relação que estão carregados na memória.

Exemplos:

Obtenha documentos na memória.

relation.in_memory

Retorna:

  • (Array <Document>)

    Os documentos na memória.



27
28
29
# Arquivo 'lib/mongoid/association/one.rb', linha 27

def in_memory
  [ _target ]
end

#respond_to?(nome, include_private = false) ➤ true | false

Como method_missing foi substituído, devemos substituir isso também.

Exemplos:

O proxy responde ao método?

relation.respond_to?(:name)

Parâmetros:

  • name (Símbolo)

    O nome do método.

Retorna:

  • (verdadeiro | falso)

    Se o proxy responder ao método.



39
40
41
# Arquivo 'lib/mongoid/association/one.rb', linha 39

def respond_to?(name, include_private = false)
  _target.respond_to?(name, include_private) || super
end