sci*_*man 4 timezone ruby-on-rails heroku
我需要让我的应用程序在本地时区显示时间.本地我在application.rb中使用Time.zone ="Athens",它工作正常.
对于Heroku,我使用了"heroku config:add TZ = Europe/Athens".这适用于我从命令行执行的每个操作,但它不适用于我的应用程序.
例如
heroku运行日期:运行date连接到终端... 运行.4786 Tue Apr 23 15:13:51 EEST 2013
heroku运行控制台:
Order.last.created_at =>星期二,2013年4月23日13:15:53 EEST +03:00
Time.zone =>(GMT + 02:00)雅典
但我把它放在我的rails视图中:<%= Time.zone%>我得到这个:(GMT + 00:00)UTC我的时间在实际应用中以UTC时间显示.
那么,如何设置时区以应用于heroku上的实际rails应用程序(而不仅仅是控制台).
Dan*_*ero 10
尝试在application.rb中设置时区,如下所示:
config.time_zone = 'Athens'
config.active_record.default_timezone = :local
Run Code Online (Sandbox Code Playgroud)
config.active_record.default_timezone确定从数据库中提取日期和时间时是否使用Time.local(如果设置为:local)或Time.utc(如果设置为:utc).默认值为:utc for Rails,尽管Active Record默认为:local在Rails之外使用.
来自:http://guides.rubyonrails.org/configuring.html#configuring-active-record