Pregunta

He revisado mi environment.rb

config.time_zone = 'Prague'

Nada en development.rb con respecto al tiempo

Esto parece funcionar, en teoría ...

Time.zone.now # Thu, 10 Sep 2009 17:51:35 CEST +02:00

también correcto ...

Time.now # Thu Sep 10 17:52:10 +0200 2009

mysql... SELECT NOW() # 2009-09-10 17:53:48  

correcto!

pero cuando creo un nuevo registro en rieles o actualizo uno antiguo

Item.create(:price => price, :spots => beds) # 2009-09-10 15:55:28

y he reiniciado los rieles muchas veces!

¿Fue útil?

Solución

Parece que lo está guardando en UTC (hora GMT), que es dos horas antes de su hora local. En gran medida, los tiempos de creación se almacenan mejor en UTC - > luego los traduces al verlos.

EDITAR: La clase de marca de tiempo parece indicar que la marca de tiempo local es supuestamente para ser utilizado. Es posible que desee comprobar la configuración que indica la documentación.

Otros consejos

¿Cuál es la hora si selecciona ese registro a través de la consola? 15:55 o 17:55?

Si selecciona a través de la consola, utiliza la zona horaria establecida, por lo que, naturalmente, será diferente de la " real " marca de tiempo en la base de datos mysql.

Echa un vistazo a Raras inconsistencias de tiempo entre producción y desarrollo también.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top