当我使用return返回记录创建的时间时,它会显示:
2010-01-20 15:04:40 UTC
但我希望在指定时区内有时间,例如中国。 RoR中有没有方便的方法?
答案 0 :(得分:5)
在config/environment.rb
中配置您的时区,让Rails将所有时间戳投射到此时区。
config.time_zone = 'Berlin'
作为替代方案,您可以随时使用
之类的东西Time.utc(2000).in_time_zone('Alaska')
请参阅文档here。
答案 1 :(得分:0)
查看TimeZone和TimeWithZone类。他们增加了时区支持。还有一些Time和DateTime类的附加功能也有助于处理时区。文档在此处给出:http://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html。
这里还有一篇很好的帖子,提供了一些额外的细节:http://ryandaigle.com/articles/2008/1/25/what-s-new-in-edge-rails-easier-timezones