Classe: Mongoid::Association::Referenced::HasOne
- Herda:
-
Objeto
- Objeto
- Mongoid::Association::Referenced::HasOne
- Inclui:
- Buildable, Mongoid::Association::Relatable
- Definido em:
- lib/mongoid/association/referenced/has_one.rb,
lib/mongoid/association/referenced/has_one/eager.rb,
lib/mongoid/association/referenced/has_one/proxy.rb,
lib/mongoid/association/referenced/has_one/binding.rb,
lib/mongoid/association/referenced/has_one/buildable.rb
Visão geral
A associação has_one.
Definido sob namespace
Módulos: Construível Classes: Vinculativo, ansioso, proxy
Colapsode resumo constante
- ASSOCIATION_OPTIONS =
As opções disponíveis para este tipo de associação, além das comuns.
[ :as, :autobuild, :autosave, :dependen, :foreign_key, :primary_key, :scope, ].congelar
- VALID_OPTIONS =
A lista completa de opções válidas para esta associação, incluindo as compartilhadas.
(ASSOCIATION_OPTIONS + SHARED_OPTIONS).congelar
- FOREIGN_KEY_SUFFIX =
O sufixo de chave estrangeira padrão.
'_id'.congelar
Constantes incluídas do Mongoid::Association::Relatable
Mongoid::Association::Relatable::PRIMARY_KEY_DEFAULT, Mongoid::Association::Relatable::SHARED_OPTIONS
Resumo do atributo de instância
Atributos incluídos do Mongoid::Association::Relatable
#name, #options, #parent_inclusions
Recolhimento do Resumo do método de instância
-
#vinculável?(doc) ➤ verdadeiro | false
Se a tentativa de vincular um objeto usando essa associação deve gerar um erro.
-
#incorporado? ➤ false
Este tipo de associação está incorporado?
-
#foreign_key ➤ string
Obtenha o campo de chave estrangeira para salvar a referência de associação.
-
#nested_builder(attributes, opções) ➤Association::Nested::Many
O objeto de construtor aninhado.
-
#caminho(documento) ➤ Raiz
Obtenha a calcula de caminho para o documento fornecido .
-
#polimórfico? ➤ verdadeiro | false
Esta associação é polimórfica?
-
#relação ➤Association::HasOne::Proxy
Obtenha a classe de proxy de associação para este tipo de associação.
-
#concern_complements ➤ Array<Mongoid::Association::Relatable>
A lista de complementos de associação.
-
#scope ➤ Proc | Símbolo | nada
Obtenha o escopo a ser aplicado ao consultar a associação.
-
#configuração! ➤ auto
Configure os métodos de instância, campos, etc.
-
#stores_foreign_key? ➤ false
Esse tipo de associação armazena a chave estrangeira?
-
#tipo ➤ string | nada
O tipo desta associação se for polimórfico.
-
#validation_default ➤ verdadeiro
O padrão para validação do objeto de associação.
Métodos incluídos do Buildable
Métodos incluídos do Mongoid::Association::Relatable
#==, #counter_cache_column_name, #create_relation, #destructive?, #extension, #foreign_key_check, #foreign_key_setter, #get_callbacks, #in_to?, #initialize, #inverse, #inverse_association, #inverse_class, #inverse_class_name, #inverse_setter, #inverse_type, #inverse_type_setter, #inverses, #key, #many?, #one?, #relation_class, #relation_class_name, #setter, #type_setter, #validate?
Métodos incluídos em Opções
#as, #autoconstrução?, #autosave, #cascadeing_callbacks?, #counter_cached? , #cíclica?, #depende, #forced_nil_inverse?, #indexado?,...
Métodos incluídos no Constrainable
Detalhes do método de instância
#vinculável?(doc) ➤ verdadeiro | false
Se a tentativa de vincular um objeto usando essa associação deve gerar um erro.
116 117 118 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 116 def vinculável?(doc) forced_nil_inverse? || (!!inverso && doc.Campos.keys.incluir?(foreign_key)) end |
#incorporado? ➤ false
Esse tipo de associação está incorporado?
70 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 70 def ; false; end |
#foreign_key ➤ string
Obtenha o campo de chave estrangeira para salvar a referência de associação.
62 63 64 65 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 62 def foreign_key @foreign_key ||= @opções[:foreign_key] ? @opções[:foreign_key].to_s : default_foreign_key_field end |
#nested_builder(attributes, opções) ➤Association ::Nested::Many
O objeto de construtor aninhado.
90 91 92 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 90 def nested_builder(attributes, ) Aninhado::Um.Novo(auto, attributes, ) end |
#caminho(documento) ➤ Raiz
Obtenha a calcula de caminho para o documento fornecido .
133 134 135 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 133 def caminho(documento) Mongoid::Atômico::Caminhos::Raiz.Novo(documento) end |
#polimórfico? ➤ verdadeiro | false
Essa associação é polimórfica?
97 98 99 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 97 def polimórfico? @polymorphic ||= !!como end |
#relação ➤Association::HasOne::Proxy
Obtenha a classe de proxy de associação para este tipo de associação.
80 81 82 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 80 def relação Proxy end |
#concern_complements ➤ Array<Mongoid::Association::Relatable>
A lista de complementos de associação.
46 47 48 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 46 def relação_complementos @relation_complements ||= [ Referenciado::Pertence a ].congelar end |
#scope ⇒ Proc | Symbol | nil
Obtenha o escopo a ser aplicado ao consultar a associação.
140 141 142 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 140 def escopo @opções[:scope] end |
#configuração! ➤ auto
Configure os métodos de instância, campos, etc. na classe possuidora da associação.
53 54 55 56 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 53 def configuração! setup_instance_methods! auto end |
#stores_foreign_key? ➤ false
Esse tipo de associação armazena a chave estrangeira?
123 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 123 def stores_foreign_key?; false; end |
#tipo ➤ string | nada
Relevante apenas para associações polimórficas.
O tipo desta associação se for polimórfico.
106 107 108 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 106 def type @type ||= "#{as}_type" se polimórfico? end |
#validation_default ⇒ true
O padrão para validação do objeto de associação.
75 |
# File 'lib/mongoid/association/referenced/has_one.rb', linha 75 def validation_default; true; end |