Clase: Mongoid::Asociación::Referenciado::Pertenece a
- Hereda:
-
Objeto
- Objeto
- Mongoid::Asociación::Referenciado::Pertenece a
- Incluye:
- Construible, Mongoid::Asociación::Relacionable
- Definido en:
lib/mongoid/asociación/referenciado/pertenece_a.rb, lib/mongoid/asociación/referenciado/pertenece_a/eager.rb,
lib/mongoid/asociación/referenciado/pertenece_a/proxy.rb,
lib/mongoid/asociación/referenciado/pertenece_a/binding.rb,
lib/mongoid/asociación/referenciado/pertenece_a/buildable.rb
Overview
La asociación de tipo BelongsTo.
Definido en el espacio de nombres
Modules: Construible Clases: Vinculante, ansioso, proxy
Colapso delresumen constante
- OPCIONES DE ASOCIACIÓN =
Las opciones disponibles para este tipo de asociación, además de las comunes.
[ :autoconstrucción, :autosave, :counter_cache, :dependiente, :clave externa, :index, :polimórfico, :clave_principal, :tocar, :opcional, :requerido, :alcance, ].freeze
- VALID_OPTIONS =
La lista completa de opciones válidas para esta asociación, incluidas las compartidas.
(OPCIONES DE ASOCIACIÓN + OPCIONES_COMPARTIDAS).freeze
- TIPO DE CAMPO DE CLAVE EXTERNA =
El tipo de campo que contiene la clave externa.
Objeto- SUFIJO DE CLAVE EXTRANJERA =
El sufijo de clave externa predeterminado.
'_id'.freeze
Constantes incluidas de Mongoid::Association::Relatable
Mongoid::Asociación::Relacionable::CLAVE_PRIMARIA_POR_DETECCIÓN, Mongoid::Asociación::Relacionable::OPCIONES_COMPARTIDAS
Resumen de atributos de instancia
Atributos incluidos de Mongoid::Association::Relatable
#nombre, #opciones, #inclusiones_principales
Colapso del resumen del método de instancia
-
#¿incrustado? ⇒ falso
¿Este tipo de asociación está integrado?
-
#clave_externa ⇒ Cadena
Obtenga el campo de clave externa para guardar la referencia de asociación.
-
#inverse_type ⇒ String
El nombre del campo utilizado para almacenar el tipo de asociación polimórfica.
-
#nested_builder(atributos, opciones) ⇒ Asociación::Anidado::Uno
El objeto constructor anidado.
-
#ruta(documento) ⇒ Raíz
Obtenga la calculadora de ruta para el documento proporcionado.
-
#¿polimórfico? ⇒ verdadero | falso
¿Esta asociación es polimórfica?
-
#relación ⇒ Asociación::Pertenece a::Proxy
Obtenga la clase de proxy de asociación para este tipo de asociación.
-
#complementos_de_relación ⇒ Matriz<Mongoid::Asociación::Relacionable><Mongoid::Association::Relatable>
La lista de complementos de la asociación.
-
#solucionador ⇒ nulo | Mongoide::ModelResolver
Devuelve el objeto responsable de convertir referencias de tipos polimórficos en objetos de clase y viceversa.
-
#scope ⇒ Proc | Symbol | nil
Obtenga el alcance que se aplicará al consultar la asociación.
-
#¡configuración! ⇒ yo mismo
Configurar los métodos de instancia, campos, etc.
-
#¿almacena_clave_externa? ⇒ verdadero
¿Este tipo de asociación almacena la clave externa?
-
#validation_default ⇒ false
El valor predeterminado para la validación del objeto de asociación.
Métodos incluidos en Buildable
Métodos incluidos de Mongoid::Association::Relatable
#==, #bindable?, #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_setter, #inverses, #key, #many?, #one?, #relation_class, #relation_class_name, #setter, #type_setter, #validate?
Métodos incluidos en Opciones
#como, #autoconstrucción?, #autoguardado, #devoluciones_de_llamadas_en_cascada?, #contador_en_caché?, #cíclico?, #dependiente, #inverso_nil_forzado?, #indexado?, #inverso_de, #orden, #clave_principal, #almacenar_como, #campo_táctil, #tocable?, #tipo
Métodos incluidos de Constrangible
Detalles del método de instancia
#¿incrustado? ⇒ falso
¿Este tipo de asociación está integrado?
77 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 77 def ; false; end |
#foreign_key ⇒ String
Obtenga el campo de clave externa para guardar la referencia de asociación.
87 88 89 90 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 87 def clave externa @clave_extranjera ||= @opciones[:clave externa] ? @opciones[:clave externa].a_s : campo de clave externa predeterminado end |
#inverse_type ⇒ String
El nombre del campo utilizado para almacenar el tipo de asociación polimórfica.
124 125 126 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 124 def inverse_type (@inverse_type ||= "#{name}_type") Si polimórfico? end |
#nested_builder(atributos, opciones) ⇒ Asociación::Anidado::Uno
El objeto constructor anidado.
134 135 136 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 134 def constructor anidado(atributos, ) Anidado::Uno.Nuevo(yo, atributos, ) end |
#ruta(documento) ⇒ Raíz
Obtenga la calculadora de ruta para el documento proporcionado.
146 147 148 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 146 def ruta(Documento) Mongoid::Atómico::Caminos::Raíz.Nuevo(Documento) end |
#¿polimórfico? ⇒ verdadero | falso
¿Esta asociación es polimórfica?
102 103 104 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 102 def polimórfico? @polimórfico ||= !!@opciones[:polimórfico] end |
#relación ⇒ Asociación::Pertenece a::Proxy
Obtenga la clase de proxy de asociación para este tipo de asociación.
95 96 97 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 95 def relación Apoderado end |
#complementos_de_relación ⇒ Matriz
La lista de complementos de la asociación.
56 57 58 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 56 def relación_complementos @relation_complements ||= [ Tiene muchos, Tiene uno ].freeze end |
#solucionador ⇒ nulo | Mongoide::ModelResolver
Devuelve el objeto responsable de convertir las referencias de tipo polimórficas en objetos de clase, y viceversa. Esto se obtiene mediante la opción ':polymorphic', proporcionada al definir la asociación.
Consulte Mongoid::ModelResolver.resolver para saber cómo se interpreta la opción ':polymorphic` aquí.
117 118 119 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 117 def resolver @resolver ||= Mongoid::ModelResolver.resolver(@opciones[:polimórfico]) end |
#scope ⇒ Proc | Symbol | nil
Obtenga el alcance que se aplicará al consultar la asociación.
153 154 155 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 153 def ámbito de aplicación @opciones[:alcance] end |
#¡configuración! ⇒ yo mismo
Configure los métodos de instancia, campos, etc. en la clase propietaria de la asociación.
63 64 65 66 67 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 63 def setup! ¡métodos_de_instancia_de_configuración! @propietario_clase.campos con alias[Nombre.a_s] = clave externa yo end |
#¿almacena_clave_externa? ⇒ verdadero
¿Este tipo de asociación almacena la clave externa?
72 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 72 def ¿almacena_clave_extranjera?; true; end |
#validation_default ⇒ false
El valor predeterminado para la validación del objeto de asociación.
82 |
# Archivo 'lib/mongoid/association/referenced/belongs_to.rb', línea 82 def validation_default; false; end |