Clase: Mongoid::Atomic::Paths::Embedded::Many
- Hereda:
-
Objeto
- Objeto
- Mongoid::Atomic::Paths::Embedded::Many
- Incluye:
- Mongoid::Atomic::Paths::Embedded
- Definido en:
- lib/mongoid/atomic/paths/embedded/many.rb
Overview
Esta clase encapsula el comportamiento para localizar y actualizar documentos definidos como un 1-n incrustado.
Resumen del atributo de la instancia
Atributos incluidos de Mongoid::Atomic::Paths::Embedded
#delete_modifier, #document, #insert_modifier, #parent
Resumen del método de clase colapsar
-
.posición_sin_documento(padre, asociación) ⇒ String
Obtenga la posición de donde iría el documento para la asociación dada.
Resumen del método de instancia colapsar
-
#initialize(documento) ⇒ Muchos
constructor
Cree la nueva utilidad de ruta.
-
#posición ⇒ string
Obtenga la posición del documento en la jerarquía.
Métodos incluidos de Mongoid::Atomic::Paths::Embedded
Detalles del Constructor
#initialize(documento) ⇒ Muchos
Cree la nueva utilidad de ruta.
18 19 20 21 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 18 def inicializar(Documento) @document, @parent = Documento, Documento._parent @insert_modifier, @delete_modifier = '$push', '$pull' end |
Detalles del método de clase
.position_without_document(parent, association) ⇒ String
Obtenga la posición en la que se colocaría el document 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 para almacenar un document requieren pasar un document para almacenar, que no tenemos al intentar almacenar la lista vacía.
49 50 51 52 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 49 def position_without_document(padre, asociación) posiciones = padre.posición_atómica "#{pos}#{'.' a menos que pos.esté vacío?}#{asociación.guardar_como}" end |
Detalles del método de instancia
#posición ⇒ String
Obtener la posición del documento en la jerarquía. Esto incluirá índices de 1-n asociaciones insertadas que pueden estar por encima de las muchas insertadas.
31 32 33 34 35 |
# Archivo 'lib/mongoid/atomic/paths/embedded/many.rb', línea 31 def posición posiciones = padre.posición_atómica localizador = Documento.nuevo_registro? ? '' : ".#{documento._índice}" "#{pos}#{'.' a menos que pos.blank?}#{document._association.store_as}#{locator}" end |