1

因此,当我运行 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 中,因为我使用的是 adistance_of_time_in_words_to_now(my_date)并且我想确保这是 PDT 相关的。

4

2 回答 2

4

Time.zone返回 rails 时区(理论上可以根据需要更改 - 例如,每个用户都可以更改)。

要获得该区域的时间,请执行

Time.zone.now

代替

Time.now
于 2013-10-23T06:56:50.403 回答
3

您需要通过以下方式抵消您的 Heroku 时区:

heroku config:add TZ=America/Los_Angeles

然后再次运行 Time.now。

于 2013-10-23T06:02:57.607 回答