我一直在调查在 UTC 和不同时区之间转换时时间显示不正确的问题。我已经追踪到我在 Rails 上使用“beginning_of_week”方法。
剥离所有应用程序逻辑,我的问题的核心是:
irb(main):018:0> Time.now.in_time_zone('Eastern Time (US & Canada)')
=> Sun, 10 Mar 2013 23:29:09 EDT -04:00
irb(main):019:0> Time.now.in_time_zone('Eastern Time (US & Canada)').beginning_of_week
=> Mon, 04 Mar 2013 00:00:00 EST -05:00
如您所见,设置了一周的开始,但在此过程中将偏移量从“-04:00”更改为“-05:00”。
有谁知道这个补丁或解决方法?还是我需要实现自己的 begin_of_week 逻辑?