在created_at中我的本地计算机上的Rails日期和时间已关闭

时间:2010-10-10 17:27:18

标签: ruby-on-rails ruby-on-rails-3

好的,这很奇怪。

我的计算机时钟是正确的,但每当我在数据库中输出created_at字段并对其进行格式化时,日期/时间都会在几个小时内消失...

是否有一些Rails 3 localhost类型设置?

2 个答案:

答案 0 :(得分:3)

Rails 3将时间戳存储为数据库中的UTC。当您将其拉出时,它将根据config / application.rb中的config.time_zone进行格式化。

ree-1.8.7-2010.02 > Thing.create
 => #<Thing id: 1, name: nil, created_at: "2010-10-10 17:57:47", updated_at: "2010-10-10 17:57:47"> 
ree-1.8.7-2010.02 > Thing.first.created_at
 => Sun, 10 Oct 2010 13:57:47 EDT -04:00 

请注意db中created_at与其显示方式之间的区别。

答案 1 :(得分:2)

您的config.time_zone如何配置?您可以在application.rb(Rails3)或environment.rb(Rails“)中将其设置为正确的时区(检查http://mad.ly/2008/04/09/rails-21-time-zone-support-an-overview/)。