Módulo: Mongoid::Extensions::Hash

Definido em:
lib/mongoid/extensions/hash.rb

Visão geral

Adiciona o comportamento de conversão de tipo à classe Hash .

Definido sob namespace

Módulos: Métodos de classe

Recolhimento do Resumo do método de instância

Detalhes do método de instância

#__consolidate__(klass) ➤ Hash

Obsoleto.

Consolide a chave/valores no hash sob um $set atômico. DEpreciado. Isso nunca foi destinado a ser uma API pública e a funcionalidade não será mais exposta quando esse método for eventualmente removido.

Exemplos:

Consolide o hash.

{ name: "Placebo" }.__consolidate__

Retorna:

  • (Hash)

    Um novo hash consolidado.



42
43
44
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 42

def __consolidate__(classe)
  Mongoid::AtomicUpdatePreparer.preparar(auto, classe)
end

#__evolve_object_id__ ➤ Hash

Evolui cada valor no hash para um ID de objeto se for convertível.

Exemplos:

Converta os valores de hash.

{ field: id }.__evolve_object_id__

Retorna:

  • (Hash)

    O hash convertido.



13
14
15
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 13

def __evolve_object_id__
  transform_values!(&:__evolve_object_id__)
end

#__mongoize_object_id__ ➤ Hash

Mongoiza cada valor no hash para um ID de objeto se for convertível.

Exemplos:

Converta os valores de hash.

{ field: id }.__mongoize_object_id__

Retorna:

  • (Hash)

    O hash convertido.



23
24
25
26
27
28
29
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 23

def __mongoize_object_id__
  se id = auto['$oid']
    BSON::ObjectId.from_string(id)
  mais
    transform_values!(&:__mongoize_object_id__)
  end
end

#delete_idObjeto

Obsoleto.

Exclui um valor de ID do hash.

Exemplos:

Exclua um valor de ID.

{}.delete_id

Retorna:

  • (Objeto)

    O valor excluído ou nulo.



54
55
56
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 54

def delete_id
  excluir('_id') || excluir(:_id) || excluir('ID') || excluir(:id)
end

#extract_id ➤ Objeto

Obsoleto.

Obtenha o atributo id deste hash, seja ele prefixado com um sublinhado ou um símbolo.

Exemplos:

Extraia o ID.

{ :_id => 1 }.extract_id

Retorna:



67
68
69
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 67

def extract_id
  auto['_id'] || auto[:_id] || auto['ID'] || auto[:id]
end

#mongoize ➤ Hash | nada

Transforme o objeto do tipo Ruby com o qual lidamos para um tipo compatível com o mongo .

Exemplos:

Mongoize o objeto.

object.mongoize

Retorna:

  • (Hash | nulo)

    O objeto mongoizado ou nulo.



79
80
81
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 79

def mongoize
  ::Hash.mongoize(auto)
end

#redimensionável?verdadeiro

O tamanho desse objeto pode mudar?

Exemplos:

O hash é redimensionável?

{}.resizable?

Retorna:

  • (verdadeiro)

    verdadeiro.



89
90
91
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 89

def redimensionável?
  true
end

#to_criteriaCriteria

Obsoleto.

Converta este hash em um critério. Irá iterar sobre cada chave no hash que deve corresponder ao método em um objeto de critérios . O hash também deve incluir uma chave "klass".

Exemplos:

Converta o hash em um critério.

{ klass: Band, where: { name: "Depeche Mode" }.to_criteria

Retorna:



102
103
104
# Arquivo 'lib/mongoid/extensions/hash.rb', linha 102

def to_criteria
  critério.from_hash(auto)
end