加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 无法设置Heroku时区

发布时间:2020-12-17 03:55:05 所属栏目:百科 来源:网络整理
导读:我需要让我的应用程序在本地时区显示时间. 本地我在application.rb中使用Time.zone =“Athens”,它工作正常. 对于Heroku,我使用了“heroku config:add TZ = Europe / Athens”.这适用于我从命令行执行的每个操作,但它不适用于我的应用程序. 例如 heroku运行
我需要让我的应用程序在本地时区显示时间.
本地我在application.rb中使用Time.zone =“Athens”,它工作正常.

对于Heroku,我使用了“heroku config:add TZ = Europe / Athens”.这适用于我从命令行执行的每个操作,但它不适用于我的应用程序.

例如

heroku运行日期:
????运行日期附在终端上…运行.4786
????Tue Apr 23 15:13:51 EEST 2013

heroku运行控制台:

Order.last.created_at
????=>星期二,2013年4月23日13:15:53 EEST 03:00

时区
=> (格林尼治标准时间02:00)雅典

但我把它放在我的rails视图中:
?????<%= Time.zone%>
我得到了这个:
????(格林威治标准时间00:00)UTC
我的时间以实际应用程序的UTC时间显示.

那么,如何设置时区以应用于heroku上的实际rails应用程序(而不仅仅是控制台).

解决方法

尝试在application.rb中设置时区,如下所示:

config.time_zone = 'Athens'
config.active_record.default_timezone = :local

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读