Clase: Mongoid::AtomicUpdatePreparer Privado
- Hereda:
-
Objeto
- Objeto
- Mongoid::AtomicUpdatePreparer
- Definido en:
- lib/mongoid/atomic_update_preparer.rb
Overview
Esta clase forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.
Una clase singleton para ayudar a preparar atributos para actualizaciones atómicas.
Una vez que el método obsoleto Hash#__consolidate__ se elimina por completo, estos métodos se pueden trasladar a Mongoid::Contextual::Mongo como métodos privados.
Colapso delresumen del método de clase
-
.preparar(atributos, clase) ⇒ Hash
privada
Convierte las claves/valores de los atributos en un hash de actualizaciones atómicas.
Detalles del método de clase
.preparar(atributos, clase) ⇒ Hash
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Convierta las claves/valores en los atributos en un hash de actualizaciones atómicas. Se supone que las claves no operadoras utilizan el operador $set.
21 22 23 24 25 26 27 28 29 30 31 |
# Archivo 'lib/mongoid/atomic_update_preparer.rb', línea 21 def prepare(atributos, klass) atributos.each_pair.con_objeto({}) hacer |(clave, valor), atomic_updates| clave = klass.nombre_del_campo_de_base_de_datos(clave.a_s) Si clave.a_s.empezar_con?('$') (atomic_updates[clave] ||= {}).update(preparar_operación(klass, clave, valor)) else (atomic_updates['$set'] ||= {})[clave] = mongoizar_para('$set', klass, clave, valor) end end end |