Módulo: Mongoid::Criteria::Queryable::Extensions::Arreglo

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

Overview

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

Definido bajo Namespace

Modules: ClassMethods

Resumen del método de instancia colapsar

Detalles del método de instancia

#__add__(objeto) ⇒ Objeto

Combine los dos objetos usando la estrategia de suma.

Ejemplos:

Añade el objeto al arreglo.

[ 1, 2, 3 ].__add__(4)

Parámetros:

  • Objeto (objeto)

    El objeto a agregar.

Devuelve:

  • (objeto)

    El resultado de la suma.



17
18
19
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 17

def __add__(Objeto)
  Objeto.__add_from_array__(sí mismo)
end

#__array__Array

Devuelve el objeto en forma de arreglo.

Ejemplos:

Obtén el arreglo.

[ 1, 2 ].__array__

Devuelve:



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

def __array__
  sí mismo
end

#__deep_copy__Array

Realiza una copia profunda del arreglo, copiando profundamente cada elemento dentro del arreglo.

Ejemplos:

Obtén una copia profunda del arreglo.

[ 1, 2, 3 ].__deep_copy__

Devuelve:

  • (arreglo)

    La copia profunda del arreglo.



38
39
40
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 38

def __deep_copy__
  map { |Valor| Valor.__deep_copy__ }
end

#__evolve_date__Array<Time>

Convierta el arreglo en un arreglo de fechas compatibles con Mongo. (Horas a medianoche).

Ejemplos:

Evoluciona el arreglo a fechas.

[ Date.new(2010, 1, 1) ].__evolve_date__

Devuelve:

  • (arreglo<Time>)

    El arreglo como tiempos a la medianoche UTC.



49
50
51
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 49

def __evolve_date__
  map { |Valor| Valor.__evolve_date__ }
end

#__evolve_time__Array<Time>

Evoluciona el arreglo a un arreglo de tiempos.

Ejemplos:

Evoluciona el arreglo a veces.

[ 1231231231 ].__evolve_time__

Devuelve:



71
72
73
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 71

def __evolve_time__
  map { |Valor| Valor.__evolve_time__ }
end

#__expand_complex__Arreglo

Obtén el objeto como ampliado.

Ejemplos:

Haz que el objeto se expanda.

obj.__expand_complex__

Devuelve:

  • (arreglo)

    El arreglo ampliado.



59
60
61
62
63
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 59

def __expand_complex__
  map hacer |Valor|
    Valor.__expand_complex__
  end
end

#__intersect__(objeto) ⇒ Objeto

Combine los dos objetos utilizando una estrategia de intersección.

Ejemplos:

Intersectar con el objeto.

[ 1, 2 ].__intersect__(3)

Parámetros:

  • Objeto (objeto)

    El objeto con el que se va a intersectar.

Devuelve:

  • (objeto)

    El resultado de la intersección.



83
84
85
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 83

def __intersect__(Objeto)
  Objeto.__intersect_from_array__(sí mismo)
end

#__sort_option__Hash

Obtiene el arreglo como opciones en el formato adecuado para pasarlas como criterios de ordenamiento de MongoDB.

Ejemplos:

Obtén el arreglo como opciones de ordenamiento.

[ :field, 1 ].__sort_option__

Devuelve:

  • (encriptada)

    El arreglo como criterio de ordenación.



94
95
96
97
98
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 94

def __sort_option__
  multi.each_with_object({}) hacer |criterios, opciones|
    opciones.¡Actualizar!(criterios.__sort_pair__)
  end
end

#__sort_pair__Hash

Obtenga el arreglo como un par ordenado.

Ejemplos:

Obtener el arreglo como par campo/dirección.

[ field, 1 ].__sort_pair__

Devuelve:



106
107
108
# Archivo 'lib/mongoid/criteria/queryable/extensions/array.rb', línea 106

def __sort_pair__
  { primero => Mongoid::Criterios::Traductor.to_direction(último) }
end