Módulo: Mongoid::Extensions::Array

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

Overview

Agrega el comportamiento de conversión de tipos a la clase arreglo.

Definido bajo Namespace

Modules: ClassMethods

Resumen del método de instancia colapsar

Detalles del método de instancia

#__evolve_object_id__arreglo<BSON::ObjectId>

Convierta el arreglo en un arreglo de identificadores de objetos.

Ejemplos:

Desarrollar la matriz a identificadores de objetos.

[ id ].__evolve_object_id__

Devuelve:

  • (Matriz<BSON::ObjectId>)

    El arreglo convertido.



15
16
17
18
# Archivo 'lib/mongoid/extensions/Array.rb', línea 15

def __evolve_object_id__
  map!(Y:__evolve_object_id__)
  sí mismo
end

#__find_args__Array

Obsoleto.

Obtenga la matriz de argumentos como argumentos para una consulta de búsqueda.

Ejemplos:

Obtenga la matriz como argumentos de búsqueda.

[ 1, 2, 3 ].__find_args__

Devuelve:

  • (arreglo)

    El arreglo de args.



27
28
29
# Archivo 'lib/mongoid/extensions/Array.rb', línea 27

def __find_args__
  flat_map{ |un(a)| un(a).__find_args__ }.único{ |un(a)| un(a).to_s }
end

#__mongoize_object_id__Matriz<BSON::ObjectId>

Mongoizar el arreglo en un arreglo de identificadores de objeto.

Ejemplos:

Desarrollar la matriz a identificadores de objetos.

[ id ].__mongoize_object_id__

Devuelve:

  • (Matriz<BSON::ObjectId>)

    El arreglo convertido.



38
39
40
41
# Archivo 'lib/mongoid/extensions/Array.rb', línea 38

def objeto
  map!(Y:__identificación_del_objeto_mongoize__).compacto!
  sí mismo
end

#__mongoize_time__Time | ActiveSupport::TimeWithZone

Nota:

Devuelve una hora local en la zona horaria por defecto.

Convierte el arreglo para almacenarlo como una hora.

Ejemplos:

Convierte el arreglo en una hora.

[ 2010, 1, 1 ].__mongoize_time__
# => 2010-01-01 00:00:00 -0500

Devuelve:

  • (Hora | ActiveSupport::TimeWithZone)

    Hora local en la zona horaria predeterminada configurada correspondiente a los componentes de fecha/hora en esta matriz.



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

def __mongoize_time__
  ::Tiempo.zona.local(*sí mismo)
end

#delete_one(objeto) ⇒ Objeto

Borrar el primer objeto del arreglo que sea igual al objeto suministrado y retornarlo. Esto es mucho más rápido que realizar un borrado estándar para grandes arreglos, ya que no ejecuta múltiples borrados.

Ejemplos:

Borra el primer objeto.

[ "1", "2", "1" ].delete_one("1")

Parámetros:

  • Objeto (Objeto) -

    El objeto a borrar.

Devuelve:

  • (Objeto) -

    El objeto eliminado.



91
92
93
94
# Archivo 'lib/mongoid/extensions/Array.rb', línea 91

def delete_one(Objeto)
  posición = index(Objeto)
  posición ? eliminar_en(posición) : nulo
end

#mongoizeMatriz | nulo

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

Ejemplos:

Mongoize el objeto.

object.mongoize

Devuelve:

  • (Arreglo | nil)

    El objeto o nil.



77
78
79
# Archivo 'lib/mongoid/extensions/Array.rb', línea 77

def mangostas
  ::Arreglo.mangostas(sí mismo)
end

#multi_arged?verdadero | falso

Obsoleto.

¿Es el arreglo un conjunto de múltiples argumentos en un método?

Ejemplos:

¿Esto es de múltiples argumentos?

[ 1, 2, 3 ].multi_arged?

Devuelve:

  • (true | false)

    Si la matriz tiene varios argumentos.



65
66
67
# Archivo 'lib/mongoid/extensions/Array.rb', línea 65

def multi_arged?
  !primero.is_a?(Picadillo) && primero.¿redimensionable? || tamaño > 1
end

#¿es redimensionable?verdadero

Devuelve si el tamaño del objeto se puede cambiar.

Ejemplos:

¿El objeto permite cambio de tamaño?

object.resizable?

Devuelve:

  • (cierto)

    verdadero.



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

def ¿redimensionable?
  true
end