似乎Time.zonew.now取决于机器当前时间。这对我来说很奇怪。
application.rb
config.time_zone = 'Central Time (US & Canada)'
我做了实验。
CST时区的实际当前时间
5:54 AM
步骤1)我已将当前机器时间强制为下午7:37 。
系统时间
drobazko@drobazko:~/www$ date
Mon Aug 17 19:37:35 EDT 2015
rails c
1.9.3-p484 :001 > Time.zone
=> (GMT-06:00) Central Time (US & Canada)
1.9.3-p484 :002 > Time.zone.now
=> Mon, 17 Aug 2015 18:40:15 CDT -05:00
步骤2)我已将当前机器时间强制为下午3:17 。
CST中的实际当前时间
5:54 AM
系统时间
drobazko@drobazko:~/www$ date
Mon Aug 17 15:17:09 EDT 2015
rails c
1.9.3-p484 :001 > Time.zone
=> (GMT-06:00) Central Time (US & Canada)
1.9.3-p484 :002 > Time.zone.now
=> Mon, 17 Aug 2015 14:18:39 CDT -05:00
问题:为什么Time.zone.now在早上5点左右没有给我当前的CST时间?
答案 0 :(得分:1)
您可以在此处找到解决方案:http://www.timeanddate.com/time/zones/cst
夏季:CDT和冬季:CST。目前,我们在夏天:)
答案 1 :(得分:1)
Time.now方法返回系统时间,因此Time.zone.now也返回系统时间,但是在应用程序的时区。