Módulo: Mongoid::Contextual::Atomic
- Definido en:
- lib/mongoid/contextual/atomic.rb
Overview
Módulo Mixin incluido en Mongoid::Criteria que proporciona una interfaz de método directo a los operadores de actualización de MongoDB ($set, $pull, $inc, etc.). Estos operadores se pueden aplicar para actualizar todos los documentos en la base de datos dentro del alcance de los criterios, sin cargar cada documento en la memoria de Mongoid.
Colapso del resumen del método de instancia
-
#add_each_to_set(añade) ⇒ nulo
Realice un $addToSet/$each atómico en los documentos coincidentes.
-
#add_to_set(adds) ⇒ nil
Ejecute un $addToSet atómico en los documentos coincidentes.
-
#bit(bits) ⇒ nil
Realice una operación atómica $bit en los documentos coincidentes.
-
#inc(incs) ⇒ nil
Realice una operación atómica $inc en los documentos coincidentes.
-
#mul(factores) ⇒ nulo
Realice una operación atómica $mul en los documentos coincidentes.
-
#pop(pops) ⇒ nil
Realice una operación atómica $pop en los documentos coincidentes.
-
#pull(pulls) ⇒ nil
Realice una operación atómica $pull en los documentos coincidentes.
-
#pull_all(pulls) ⇒ nil
Realice una operación atómica $pullAll en los documentos coincidentes.
-
#push(pushes) ⇒ nil
Realice una operación atómica $push en los documentos coincidentes.
-
#push_all(empuja) ⇒ nulo
Realice una operación atómica $push/$each en los documentos coincidentes.
-
#renombrar(renombrar) ⇒ nulo
Realice un $rename atómico de los campos en los documentos coincidentes.
-
#set(sets) ⇒ nil
Realizar un conjunto atómico de campos en los documentos coincidentes.
-
#set_max(campos) ⇒ nil (también: #clamp_lower_bound)
Realiza una operación de actualización atómica $max en el campo o campos indicados.
-
#set_min(campos) ⇒ nil (también: #clamp_upper_bound)
Realiza una operación de actualización atómica $min en el campo o campos indicados.
-
#unset(*unsets) ⇒ nil
Realizar un $unset atómico de un campo en los documentos coincidentes.
Detalles del método de instancia
#add_each_to_set(agregados) ⇒ nil
Realice un $addToSet/$each atómico en los documentos coincidentes.
34 35 36 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 34 def agregar_cada_uno_al_conjunto(agrega) vista.update_many("$addToSet" => recopilar_cada_operación(agrega)) end |
#add_to_set(adds) ⇒ nil
Ejecute un $addToSet atómico en los documentos coincidentes.
22 23 24 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 22 def añadir_al_conjunto(agrega) vista.update_many("$addToSet" => operaciones de recopilación(agrega)) end |
#bit(bits) ⇒ nil
Realice una operación atómica $bit en los documentos coincidentes.
46 47 48 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 46 def bit(los bits) vista.update_many("$bit" => operaciones de recopilación(los bits)) end |
#inc(incs) ⇒ nil
Realice una operación atómica $inc en los documentos coincidentes.
58 59 60 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 58 def Inc(incs) vista.update_many("$inc" => operaciones de recopilación(incs)) end |
#mul(factores) ⇒ nulo
Realice una operación atómica $mul en los documentos coincidentes.
70 71 72 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 70 def mul(factores) vista.update_many("$mul" => operaciones de recopilación(factores)) end |
#pop(pops) ⇒ nil
Realice una operación atómica $pop en los documentos coincidentes.
85 86 87 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 85 def pop(COP) vista.update_many("$pop" => operaciones de recopilación(COP)) end |
#pull(pulls) ⇒ nil
La extracción de expresiones aún no es compatible.
Realice una operación atómica $pull en los documentos coincidentes.
99 100 101 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 99 def tirar(tira) vista.update_many("$pull" => operaciones de recopilación(tira)) end |
#pull_all(pulls) ⇒ nil
Realice una operación atómica $pullAll en los documentos coincidentes.
111 112 113 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 111 def tirar_todo(tira) vista.update_many("$pullAll" => operaciones de recopilación(tira)) end |
#push(pushes) ⇒ nil
Realice una operación atómica $push en los documentos coincidentes.
123 124 125 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 123 def Push(empuja) vista.update_many("$push" => operaciones de recopilación(empuja)) end |
#push_all(empuja) ⇒ nulo
Realice una operación atómica $push/$each en los documentos coincidentes.
135 136 137 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 135 def empujar_todos(empuja) vista.update_many("$push" => recopilar_cada_operación(empuja)) end |
#renombrar(renombrar) ⇒ nulo
Realice un $rename atómico de los campos en los documentos coincidentes.
147 148 149 150 151 152 153 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 147 def renombrar(cambia el nombre) Operaciones = cambia el nombre.inyectar({}) hacer |ops, (nombre antiguo, new_name)| ops[nombre antiguo] = new_name.a_s ops end vista.update_many("$rename" => operaciones de recopilación(Operaciones)) end |
#set(sets) ⇒ nil
Realizar un conjunto atómico de campos en los documentos coincidentes.
163 164 165 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 163 def conjunto(conjuntos) vista.update_many("$set" => operaciones de recopilación(conjuntos)) end |
#set_max(campos) ⇒ nil También conocido como: clamp_lower_bound
Debido a la existencia de Mongoid::Contextual::Aggregable::Mongo#max, este método no puede llamarse #max y, por lo tanto, rompe la convención de otros métodos similares de recibir el nombre de la operación MongoDB que realizan.
Realiza una operación de actualización atómica de $max en el campo o campos indicados. Cada campo se establecerá en el máximo de [valor_actual, valor indicado]. Esto garantiza que ningún campo sea menor que el valor indicado; en otras palabras, el valor indicado es el mínimo efectivo para ese campo.
223 224 225 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 223 def set_max(campos) vista.update_many("$máx" => operaciones de recopilación(campos)) end |
#set_min(campos) ⇒ nil También conocido como: clamp_upper_bound
Debido a la existencia de Mongoid::Contextual::Aggregable::Mongo#min, este método no puede llamarse #min y, por lo tanto, rompe la convención de otros métodos similares de recibir el nombre de la operación MongoDB que realizan.
Realiza una operación de actualización atómica de $min en el campo o campos indicados. Cada campo se establecerá en el mínimo de [valor_actual, valor indicado]. Esto garantiza que ningún campo sea mayor que el valor indicado; en otras palabras, el valor indicado es el máximo efectivo para ese campo.
200 201 202 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 200 def set_min(campos) vista.update_many("$min" => operaciones de recopilación(campos)) end |
#unset(*unsets) ⇒ nil
Realizar un $unset atómico de un campo en los documentos coincidentes.
178 179 180 |
# Archivo 'lib/mongoid/contextual/atomic.rb', línea 178 def desarmado(*desajustes) vista.update_many('$unset' => operaciones de recopilación_desactivadas(desajustes)) end |