Clase: Mongoid::Association::Referenced::HasOne
- Hereda:
-
Objeto
- Objeto
- Mongoid::Association::Referenced::HasOne
- Incluye:
- Construible, Mongoid::Asociación::Relacionable
- Definido en:
- 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
Overview
La asociación has_one.
Definido bajo Namespace
Modules: Construible Clases: Vinculante, ansioso, proxy
Colapso delresumen constante
- ASSOCIATION_OPTIONS =
Las opciones disponibles para este tipo de asociación, además de las comunes.
[ como, :autobuild, :autosave, :dependiente, :foreign_key, :primary_key, :alcance, ].freeze
- VALID_OPTIONS =
La lista completa de opciones válidas para esta asociación, incluidas las compartidas.
(ASSOCIATION_OPTIONS + OPCIONES_COMPARTIDAS).freeze
- SUFIJO DE CLAVE EXTRANJERA =
El sufijo de clave externa predeterminado.
'_id'.freeze
Constantes incluidas de Mongoid::Association::Relatable
Mongoid::Association::Relatable::PRIMARY_KEY_DEFAULT, Mongoid::Association::Relatable::SHARED_OPTIONS
Resumen del atributo de la instancia
Atributos incluidos desde Mongoid::Association::Relatable
#nombre, #opciones, #inclusiones_superiores
Resumen del método de instancia colapsar
-
#enlazable?(doc) ⇒ verdadero | falso
Si intentar vincular un objeto mediante esta asociación debería generar un error.
-
#embedded? ⇒ false
¿Este tipo de asociación está embebido?
-
#foreign_key ⇒ String
Obtenga el campo de clave foránea para guardar la referencia de asociación.
-
#nested_builder(attributes, options) ⇒ Association::Nested::Many
El objeto builder anidado.
-
#ruta(documento) ⇒ Raíz
Obtén la calculadora de rutas para el documento suministrado.
-
#polymorphic? ⇒ true | false
¿Es esta asociación polimórfica?.
-
#relation ⇒ Association::HasOne::Proxy
Obtenga la clase de proxy de asociación para este tipo de asociación.
-
#relation_complements ⇒ Array<Mongoid::Association::Relatable>
La lista de complementos de asociaciones.
-
#scope ⇒ Proc | Symbol | nil
Obtén el alcance que se aplicará al consultar la asociación.
-
#setup! ⇒ self
Configura los métodos, campos, etc. de la instancia.
-
#stores_foreign_key? ⇒ false
¿Este tipo de asociación almacena la clave foránea?.
-
#type ⇒ String | nil
El tipo de esta asociación si es polimórfica.
-
#validation_default ⇒ true
El valor por defecto para la validación del objeto de asociación.
Métodos incluidos en Buildable
Métodos incluidos en WithPolymorphicCriteria
Métodos incluidos de 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 incluidos de Opciones
#as, #autobuilding?, #autosave, #cascading_callbacks?, #counter_cached?, #cyclic?, #dependent, #forced_nil_inverse?, #índice?, #inverse_of, #order, #primary_key, #store_as, #touch_field, #touchable?
Métodos incluidos de Constrainable
Detalles del método de instancia
#enlazable?(doc) ⇒ verdadero | falso
Si intentar vincular un objeto mediante esta asociación debería generar un error.
116 117 118 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 116 def ¿vinculable?(doc) forced_nil_inverse? || (!!inversa && doc.campos.claves.incluir?(foreign_key)) end |
#¿integrado? ⇒ false
¿Este tipo de asociación está incrustado?
70
|
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 70 def ; false; end |
#foreign_key ⇒ String
Obtenga el campo de clave foránea para guardar la referencia de asociación.
62 63 64 65 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 62 def foreign_key @clave_extranjera ||= @options[:foreign_key] ? @options[:foreign_key].to_s : default_foreign_key_field end |
#nested_builder(attributes, options) ⇒ Asociación::Anidada::Muchas
El objeto builder anidado.
90 91 92 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 90 def nested_builder(atributos, ) Anidado::Uno.Nuevo(sí mismo, atributos, ) end |
#ruta(documento) ⇒ Raíz
Obtén la calculadora de rutas para el documento suministrado.
133 134 135 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 133 def ruta(Documento) Mongoid::Atómico::Rutas::Raíz.Nuevo(Documento) end |
#polimórfico? ⇒ true | false
¿Esta asociación es polimórfica?
97 98 99 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 97 def polimórfico? @polymorphic ||= !!como end |
#relación ⇒ Association::HasOne::Proxy
Obtenga la clase de proxy de asociación para este tipo de asociación.
80 81 82 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 80 def relación Apoderado end |
#complementos_de_relación ⇒ Matriz
La lista de complementos de asociaciones.
46 47 48 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 46 def relation_complements @relation_complements ||= [ Referenciado::BelongsTo ].freeze end |
#scope ⇒ Proc | Symbol | nil
Obtén el alcance que se aplicará al consultar la asociación.
140 141 142 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 140 def Alcance @options[:alcance] end |
#¡configuración! ⇒ yo mismo
Configura los métodos de instancia, campos, etc. en la clase propietaria de la asociación.
53 54 55 56 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 53 def setup! ¡métodos_de_instancia_de_configuración! sí mismo end |
#stores_foreign_key? ⇒ false
¿Este tipo de asociación almacena la clave externa?
123 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 123 def ¿stores_foreign_key?; false; end |
#type ⇒ String | nil
Solo aplicable a asociaciones polimórficas.
El tipo de esta asociación si es polimórfica.
106 107 108 |
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 106 def tipo @tipo ||= "#{as}_type" si polimórfico? end |
#validation_default ⇒ true
El valor por defecto para la validación del objeto de asociación.
75
|
# Archivo 'lib/mongoid/association/referenced/has_one.rb', línea 75 def validation_default; true; end |