Módulo: Mongoid::Extensions::TimeWithZone

Definido en:
lib/mongoid/extensiones/time_with_zone.rb

Overview

Añade el comportamiento de conversión de tipos a la clase ActiveSupport::TimeWithZone.

Definido bajo Namespace

Modules: ClassMethods

Resumen del método de instancia colapsar

Detalles del método de instancia

#__mongoize_time__ActiveSupport::TimeWithZone

Mongoiza un ActiveSupport::TimeWithZone en una hora.

TimeWithZone siempre se convierte en instancias de TimeWithZone (que son ellas mismas).

Devuelve:

  • (ActiveSupport::TimeWithZone)

    self.



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

def __mongoize_time__
  sí mismo
end

#_bson_to_iObject

Este código se copia de la extensión de la clase Time en el gem bson-ruby. Debe eliminarse de aquí cuando la versión mínima de BSON sea 5+. Consulte https://jira.mongodb.org/browse/MONGOID-5491.



31
32
33
34
35
36
37
38
39
40
41
# Archivo 'lib/mongoid/extensions/time_with_zone.rb', línea 31

def _bson_to_i
  return super si ¿definido?(super)

  # Solución alternativa para que el #to_i de JRuby redondee los sellos de tiempo negativos hacia arriba
  # en lugar de hacia abajo (https://github.com/jruby/jruby/issues/6104)
  si BSON::Entorno.jruby?
    (sí mismo - (usec.to_r / 1_000_000)).to_i
  else
    to_i
  end
end

#mongoizeHora

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

Ejemplos:

Mongoize el objeto.

date_time.mongoize

Devuelve:

  • (Hora)

    El objeto mongoizado.



24
25
26
# Archivo 'lib/mongoid/extensions/time_with_zone.rb', línea 24

def mongoize
  ::ActiveSupport::TimeWithZone.mongoize(sí mismo)
end