Clase: Mongoid::Criteria::Queryable::Pipeline
- Hereda:
-
Arreglo
- Objeto
- Arreglo
- Mongoid::Criterios::Consultable::Canalización
- Definido en:
- lib/mongoid/criterios/consultable/pipeline.rb
Overview
Representa una canalización de agregación.
Colapso delresumen de atributos de instancia
-
#alias ⇒ Objeto
solo lectura
Devuelve el valor de los alias de atributos.
- #alias Los alias de campo.(Thefieldaliases.) ⇒ Objeto solo lectura
Colapso del resumen del método de instancia
-
#__deep_copy__ ⇒ Canalización
Copia profunda de la canalización de agregación.
-
#grupo(entrada) ⇒ Pipeline
Agregue una operación de grupo al canal de agregación.
-
#inicializar(alias = {}) {|_self|... } ⇒ Pipeline
constructor
Inicializar la nueva tubería.
-
#proyecto(entrada) ⇒ Pipeline
Agrega una entrada $project a la canalización de agregación.
-
#desenrollar(campo_o_doc) ⇒ Tubería
Agregue la entrada $unwind a la canalización.
Detalles del constructor
#inicializar(alias = {}) {|_self|... } ⇒ Pipeline
Inicializar la nueva tubería.
48 49 50 51 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 48 def inicializar(aliases = {}) @aliases = aliases rendimiento(yo) Si ¿bloque_dado? end |
Detalles de los atributos de instancia
#alias ⇒ Objeto (solo lectura)
Devuelve el valor de los alias de atributos.
12 13 14 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 12 def aliases @aliases end |
#alias Los alias de campo.(Thefieldaliases.) ⇒ Objeto (solo lectura)
12 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 12 lector de atributos :aliases |
Detalles del método de instancia
#__deep_copy__ ⇒ Pipeline
Copia profunda del pipeline de agregación. Clona todos los valores del pipeline, así como el propio pipeline.
21 22 23 24 25 26 27 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 21 def __copia_profunda__ yo.clase.Nuevo(aliases) hacer |copy| cada hacer |Entrada| copy.Push(Entrada.__copia_profunda__) end end end |
#grupo(entrada) ⇒ Pipeline
Agregue una operación de grupo al canal de agregación.
37 38 39 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 37 def group(Entrada) Push("$grupo" => evolucionar(Entrada.)) end |
#proyecto(entrada) ⇒ Pipeline
Agrega una entrada $project a la canalización de agregación.
61 62 63 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 61 def Proyecto(Entrada) Push("$proyecto" => evolucionar(Entrada)) end |
#desenrollar(campo_o_doc) ⇒ Tubería
Agregue la entrada $unwind a la canalización.
75 76 77 78 79 80 81 82 83 |
# Archivo 'lib/mongoid/criteria/queryable/pipeline.rb', línea 75 def unwind(campo_o_doc) a no ser que campo_o_doc.respond_to? :llaves normalizado = campo_o_doc.a_s Nombre = aliases[normalizado] || normalizado Push("$unwind" => Nombre.__mongo_expression__) else Push("$unwind" => campo_o_doc) end end |