我觉得我对此帖Why is the timezone off in delayed_job?
有类似的问题我已在config/application.rb
中设置了我的time_zone,如下所示:
module Bane
class Application < Rails::Application
config.time_zone 'Eastern Time (US & Canada)'
end
end
在查看我的delayed_jobs.log时,我记录了时间戳显示正确。但是,当我查看我的delayed_jobs
表时,它会显示2015-11-19 14:25:11.637
,这不是我所期望的(2015-11-19 09:25:11.xxx
)。
答案 0 :(得分:4)
当您设置config.time_zone
设置时,Rails仍然使用UTC存储日期,但在加载记录后将它们转换为所需的时区。
还有另一个设置 - config.active_record.default_timezone
,它影响日期存储在数据库中的方式,但据我所知,它只能设置为:local
,(默认值) :utc
。但是,如果您可以将服务器时区设置为EST
,那么我相信它应该可以正常工作。
编辑:您似乎也可以为default_timezone
设置任何时区。例如:config.active_record.default_timezone = 'Eastern Time (US & Canada)'
。