2012-12-06 105 views
0

我试图将Rails 3.2.8应用程序中的默认时区更改为GMT + 04:00,但我不知道该怎么做。下面的解决方案并没有为我工作:Rails更改默认时区

config.time_zone = 'Moscow' 
config.time_zone = "(GMT+04:00) Moscow" 
config.active_record.default_timezone = 'Moscow' 
config.active_record.default_timezone = :local 

而且我在铁轨已经试过安慰以下: 的ActiveSupport :: TimeZone.all.map(&:名) 至极返回值的列表,其中包括"Moscow"Time.zone返回(GMT+00:00) UTC这是不正确的,它应该是(GMT+04:00) UTC。然后我改变了Time.zone = "Moscow"Time.now返回了正确的值(... + 0400)。

所以要解决它,我只是使用Time.now + 4.hour,但我也需要datetime_select来显示我的本地时间。 Time.now + 4.hour不是一个正确的解决方案。

请分享任何想法如何将默认时区设置为他的本地值。 预先感谢您。

+2

你检查了最近修改RailsCast在这个主题? http://railscasts.com/episodes/106-time-zones-revised?view=asciicast –

回答

0

突然间,我已经本地化了这个问题。 我运行Win7,我的WEBrick服务器显示正确的时间,但项目本身显示错误。同时,我的生产服务器正常工作,显然,问题出在操作系统上。 UPD:问题已修复。更改application.rb文件后,我应该重新启动WEBrick服务器。

+0

如果您有更新的问题,请使用编辑链接,并更改原始问题,而不是添加答案。 –

+1

汤姆,甚至在我发布问题之前,我已经找到了解决方案,但在我准备好之后。所以我决定使用“发布你的问题和答案”按钮。顺便说一句,谢谢你的链接上面.. –