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

Definido en:
lib/mongoid/criterios/consultables/extensiones/rango.rb

Overview

Agrega comportamiento de conversión de tipos de consulta a la clase Range.

Definido bajo Namespace

Modules: ClassMethods

Resumen del método de instancia colapsar

Detalles del método de instancia

#__array__Array

Obtén el rango como un arreglo.

Ejemplos:

Obtén el rango como un arreglo.

1...3.__array__

Devuelve:

  • (arreglo)

    El rango como un arreglo.



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

def __array__
  to_a
end

#__evolve_date__Hash

Convierte el rango en una mongo friendly query $gte/$lte para fechas.

Ejemplos:

Evoluciona el rango.

(11231312..213123131).__evolve_date__

Devuelve:

  • (encriptada)

    La consulta de rango $gte/$lte con horarios a la medianoche UTC.



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

def __evolve_date__
  __evolve_range_naive__.transform_values! {|v| v&.__evolve_date__ }
end

#__evolve_range__(serializer: nil) ⇒ Hash

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Convierte el rango en una consulta compatible con Mongo $gte/$lte.

Ejemplos:

Evoluciona el rango.

(11231312..213123131).__evolve_range__

Parámetros:

  • serializador (Objeto) (predeterminado: nulo)

    El serializador opcional para el campo.

Devuelve:



52
53
54
55
56
57
58
59
60
61
62
63
64
# Archivo 'lib/mongoid/criteria/queryable/extensions/range.rb', línea 52

def __evolve_range__(serializador: nulo)
  __evolve_range_naive__.transform_values! hacer |Valor|
    si serializador
      serializador.evolucionar(Valor)
    else
      caso Valor
      Cuando Tiempo, Fecha y hora entonces Valor.__evolve_time__
      Cuando fecha entonces Valor.__evolve_date__
      else Valor
      end
    end
  end
end

#__evolve_time__Hash

Convierte el rango en una consulta amigable con Mongo $gte/$lte para conocer los horarios.

Ejemplos:

Evoluciona el rango.

(11231312..213123131).__evolve_date__

Devuelve:

  • (encriptada)

    La query de rango $gte/$lte con tiempos en UTC.



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

def __evolve_time__
  __evolve_range_naive__.transform_values! {|v| v&.__evolve_time__ }
end