所以,当我运行Heroku Rails控制台时,我会这样做:
irb(main):005:0> Time.zone
=> (GMT-08:00) Pacific Time (US & Canada)
当我这样做时:
irb(main):004:0> Time.now
=> 2013-07-20 16:00:38 +0000
哪个不是“真实”,因为当前的PDT时间是9:00。这里可以发生什么?我想确保Time和DateTime对象都在PDT中,因为我使用distance_of_time_in_words_to_now(my_date)
并且我想确保这与PDT相关。
答案 0 :(得分:4)
Time.zone
返回rails时区(理论上可以根据需要进行更改 - 例如,每个用户可以更改一个)。
要获得该区域的时间,请执行
Time.zone.now
而不是
Time.now
答案 1 :(得分:3)
您需要通过以下方式抵消您的Heroku时区
heroku config:add TZ=America/Los_Angeles
然后再次运行Time.now。