Módulo: Mongoid::Extensions::Hash

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

Overview

Agrega comportamiento de conversión de tipos a la clase Hash.

Definido bajo Namespace

Modules: ClassMethods

Resumen del método de instancia colapsar

Detalles del método de instancia

#__consolidate__(klass) ⇒ Hash

Obsoleto.

Consolidar las claves/valores en el hash bajo un $set atómico. EN DESUSO. Nunca se pretendió que esto fuera una API pública y la funcionalidad ya no se expondrá una vez que este método sea eliminado eventualmente.

Ejemplos:

Consolidar el hash.

{ name: "Placebo" }.__consolidate__

Devuelve:



42
43
44
# Archivo 'lib/mongoid/extensions/hash.rb', línea 42

def __consolidate__(klass)
  Mongoid::AtomicUpdatePreparer.prepare(sí mismo, klass)
end

#__evolve_object_id__Hash

Transforma cada valor en el hash en un id de objeto si es convertible.

Ejemplos:

Convierte los valores hash.

{ field: id }.__evolve_object_id__

Devuelve:



13
14
15
# Archivo 'lib/mongoid/extensions/hash.rb', línea 13

def __evolve_object_id__
  transform_values!(&:__evolve_object_id__)
end

#__mongoize_object_id__Hash

Convierta cada valor en el hash a un ID de objeto si es convertible.

Ejemplos:

Convierte los valores hash.

{ field: id }.__mongoize_object_id__

Devuelve:



23
24
25
26
27
28
29
# Archivo 'lib/mongoid/extensions/hash.rb', línea 23

def objeto
  si ID = sí mismo['$oid']
    BSON::ObjectId.from_string(ID)
  else
    transform_values!(&objeto)
  end
end

#delete_idObjeto

Obsoleto.

Elimina un valor de id del hash.

Ejemplos:

Borra un valor de id.

{}.delete_id

Devuelve:

  • (objeto)

    El valor eliminado o nil.



54
55
56
# Archivo 'lib/mongoid/extensions/hash.rb', línea 54

def delete_id
  borrar('_id') || borrar(::_id) || borrar('id') || borrar(:id)
end

#extract_idObjeto

Obsoleto.

Obtenga el atributo id de este hash, ya sea que esté precedido por un guion bajo o sea un símbolo.

Ejemplos:

Extraer el id.

{ :_id => 1 }.extract_id

Devuelve:

  • (objeto)

    El valor del id.



67
68
69
# Archivo 'lib/mongoid/extensions/hash.rb', línea 67

def extract_id
  sí mismo['_id'] || sí mismo[::_id] || sí mismo['id'] || sí mismo[:id]
end

#mongoizeHash | nil

Convierte el objeto desde el tipo Ruby con el que trabajamos a un tipo compatible con Mongo.

Ejemplos:

Mongoize el objeto.

object.mongoize

Devuelve:

  • (Hash | nil)

    El objeto mongoizado o nulo.



79
80
81
# Archivo 'lib/mongoid/extensions/hash.rb', línea 79

def mongoize
  ::encriptada.mongoize(sí mismo)
end

#¿es redimensionable?verdadero

¿Puede cambiar el tamaño de este objeto?

Ejemplos:

¿Es el hash redimensionable?

{}.resizable?

Devuelve:

  • (cierto)

    verdadero.



89
90
91
# Archivo 'lib/mongoid/extensions/hash.rb', línea 89

def ¿redimensionable?
  true
end

#to_criteriaCriteria

Obsoleto.

Convierte este hash en un criterio. Interpolará cada clave en el hash, que debe corresponder a un método en un objeto de criterios. El hash también debe incluir una clave "klass".

Ejemplos:

Convierta el hash en criterios.

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

Devuelve:



102
103
104
# Archivo 'lib/mongoid/extensions/hash.rb', línea 102

def to_criteria
  Criterios.from_hash(sí mismo)
end