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

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

Overview

Agrega el 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.



15
16
17
# Archivo 'lib/mongoid/criteria/queryable/extensions/range.rb', línea 15

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.



25
26
27
# Archivo 'lib/mongoid/criteria/queryable/extensions/range.rb', línea 25

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

#__evolve_range__(serializer: nil) ⇒ Hash

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Convierte el rango en una query compatible con mongo $gte/$lte.

Ejemplos:

Evoluciona el rango.

(11231312..213123131).__evolve_range__

Parámetros:

  • serializador (objeto) (valor por defecto: nil)

    El serializador opcional para el campo.

Devuelve:



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

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

Convertir el rango a una query compatible con mongo $gte/$lte para horas.

Ejemplos:

Evoluciona el rango.

(11231312..213123131).__evolve_date__

Devuelve:

  • (encriptada)

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



35
36
37
# Archivo 'lib/mongoid/criteria/queryable/extensions/range.rb', línea 35

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