Clase: Mongoid::Atomic::Paths::Embedded::Many
- Hereda:
-
Objeto
- Objeto
- Mongoid::Atomic::Paths::Embedded::Muchos
- Incluye:
- Mongoid::Atomic::Paths::Incrustado
- Definido en:
- lib/mongoid/atomic/paths/embedded/many.rb
Overview
Esta clase encapsula el comportamiento para localizar y actualizar documentos que están definidos como un 1-n incrustado.
Resumen de atributos de instancia
Atributos incluidos desde Mongoid::Atomic::Paths::Embedded
#delete_modifier, #document, #insert_modifier, #parent
Colapso delresumen del método de clase
-
.position_without_document(padre, asociación) ⇒ Cadena
Obtenga la posición donde iría el documento para la asociación dada.
Colapso del resumen del método de instancia
-
#inicializar(documento) ⇒ Muchos
constructor
Crear la utilidad de nueva ruta.
-
#posición ⇒ Cadena
Obtener la posición del documento en la jerarquía.
Métodos incluidos en Mongoid::Atomic::Paths::Embedded
Detalles del constructor
#inicializar(documento) ⇒ Muchos
Crear la utilidad de nueva ruta.
20 21 22 23 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 20 def inicializar(Documento) @documento, @parent = Documento, Documento._padre @insert_modifier, @delete_modifier ="$push", "$pull" end |
Detalles del método de clase
.position_without_document(padre, asociación) ⇒ Cadena
Obtiene la posición donde se ubicaría el documento para la asociación dada. El caso de uso de esta función es cuando se intenta persistir una lista vacía para una asociación incrustada. Todas las funciones existentes para obtener la posición donde se almacena un documento requieren pasar un documento para almacenar, lo cual no ocurre al intentar almacenar la lista vacía.
52 53 54 55 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 52 def posición_sin_documento(padre, asociación) pos = padre.posición atómica "#{pos}#{". " a menos que pos. estéenblanco? }#{association. store_as }" end |
Detalles del método de instancia
#posición ⇒ Cadena
Obtener la posición del documento en la jerarquía. Esto incluirá los índices de las asociaciones incrustadas 1-n que puedan estar por encima de las muchas incrustadas.
33 34 35 36 37 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 33 def posición pos = padre.posición atómica localizador = Documento.¿nuevo_registro? ? "" : ". #{documento._índice}" "#{pos}#{". " a menos que pos. esté en blanco?}#{document._association. store_as}#{locator}" end |