Rails应用程序中奇怪的时间行为

时间:2013-06-05 08:20:42

标签: ruby-on-rails timezone

发布消息时,时间显示正确(所需的时区)。刷新浏览器后,时间就会失真。 我检查了控制台和数据库表,我更加困惑。 我都检查了本地和Heroku环境。

enter image description here enter image description here

当前设置:

在Heroku控制台上,

heroku config:add TZ="Asia/Seoul"

在application.rb

config.time_zone = 'Seoul'

config.active_record.default_timezone = 'Seoul'

我需要修理什么吗?

更新 我删除了application.rb中的时区设置,现在 Time.now = +0900 Time.zone.now = +00:00

根据这个post,无论如何在配置文件中设置时区,rails DB是否总是使用UTC时区?

1 个答案:

答案 0 :(得分:0)

这解决了这个问题。

heroku config:add TZ="Asia/Seoul"
application.rb

中的

config.time_zone = 'Seoul'

config.active_record.default_timezone = :local

然后,Time.zone.now == Time.now

我稍后会详细说明。