1.9.3p0 :020 > DateTime.now
=> Mon, 02 Jan 2012 21:10:36 -0500
1.9.3p0 :021 > DateTime.yesterday
=> Mon, 02 Jan 2012
我很困惑为什么会这样。任何想法?今天应该是 1 月 2 日,而昨天是 1 月 1 日。
这也很奇怪。
1.9.3p0 :023 > 1.days.ago
=> Mon, 02 Jan 2012 02:20:22 UTC +00:00
最佳答案
看来您需要设置时区。试试这个:
> z = "Pacific Time (US & Canada)"
=> "Pacific Time (US & Canada)"
> 0.days.ago.in_time_zone(z)
=> Mon, 02 Jan 2012 18:37:50 PST -08:00
然后在 application.rb 中添加类似这样的内容:
config.time_zone = "Pacific Time (US & Canada)"
关于ruby - DateTime.yesterday 返回今天的日期而不是昨天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8707273/