可能重复:
UTC time resets to 2000-01-01 (ruby). How do I prevent the time from resetting?
在我的application.rb中,我有:
config.time_zone = "Eastern Time (US & Canada)"
如果在我的申请中,我显示:
<%= Time.now %>
一切看起来都像我期望的那样(“2012-10-09 09:20:39 -0400
”)。
我还有一个Session
模型,其属性为start
'和'end
',类型为Time
。
如果在我的应用程序代码中,我创建了一个Session
并设置了s.start=Time.now
,则时间会在数据库中显示为UTC时间,如果为应用程序进行了翻译,则可以使用2000-01-01
的日期,如果我有类似的话,在应用程序中显示相同的方式:
<%= s.start %>
此外,如果我稍后使用end
填充“s.end = Time.now
”属性,我会得到类似的2000-01-01
和UTC时间值。同时,我将elapsed
时间属性设置为:
s.elapsed = s.end - s.start
在数据库中,elapsed
显示为极大数字(403056003),即使start
和end
之间的差异只有几秒钟。
如果我稍后在我的应用中显示s.elapsed
和(s.end - s.start
),s.elapsed
会显示数据库中的大号(显然),但显示s.end - s.start
的计算正确!
对不起,如果这是漫无边际的。我显然缺少一些基本的东西,但无法到达那里。