Classe: Mongoid::AtomicUpdatePreparer Private
- Herda:
-
Objeto
- Objeto
- Mongoid::AtomicUpdatePreparer
- Definido em:
- lib/mongoid/atomic_update_preparer.rb
Visão geral
Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.
Uma classe singleton para ajudar na preparação de atributos para atualizações atômicas.
Depois que o método Hash#__consolidate__ obsoleto for totalmente removido, esses métodos podem ser movidos para o Mongoid::Contextual::Mongo como métodos privados.
Recolhimento do Resumo do método de classe
-
.preparar(atributos, klass) ➤ Hash
privado
Converta a chave/valores nos atributos em um hash de atualizações atômicas.
Detalhes do método de classe
.preparar(atributos, klass) ➤ Hash
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Converta a chave/valores nos atributos em um hash de atualizações atômicas. Supõe-se que as chaves que não são do operador usem a operação $set.
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/mongoid/atomic_update_preparer.rb', linha 21 def preparar(attributes, classe) attributes.cada_pair.with_object({}) fazer |(chave, valor), atomic_updates| chave = classe.database_field_name(chave.to_s) se chave.to_s.start_with?('$') (atomic_updates[chave] ||= {}).update(prepare_operation(classe, chave, valor)) mais (atomic_updates['$set'] ||= {})[chave] = mongoize_for(chave, classe, chave, valor) end end end |