【发布时间】:2011-04-29 12:18:14
【问题描述】:
> e = Event.first
> e.registration_start_utc #registration_start_utc is a datetime column
=> Sat, 23 Oct 2010 06:38:00 UTC +00:00
> e.registration_start_utc.utc?
=> true
> ActiveSupport::TimeZone.find_tzinfo("America/New_York").utc_to_local(e.registration_start_utc)
=> Sat, 23 Oct 2010 02:38:00 UTC +00:00
关于此的 2 个问题:
1) 为什么最后一个输出显示“UTC” - 小时已转换 (6 => 2) 但它仍然显示 UTC。为什么不是 EST/EDT?
2) 夏令时切换并且纽约的偏移量从 -4 变为 -5 后会发生什么?数据库中的值没有改变,所以我唯一的结论是我的应用程序将开始在各处显示“1:38”而不是正确的 2:38?
我最关心的是这里的#2。 #1 更多的是一种好奇心。
谢谢!
【问题讨论】:
-
Phil 的推理请参见here
标签: ruby-on-rails timezone dst