我对 RoR 比较陌生,并且在时区转换方面遇到了麻烦。当从数据库中获取数据(存储在美国中部时间)时,它认为那里的时间是 UTC 并尝试转换它们,因此使它们错了 5 个小时。我的 application.rb 文件中有这个:
config.time_zone = 'Central Time (US & Canada)'
config.active_record.default_timezone = 'Central Time (US & Canada)'
如果我删除这些配置指令之一,时间将无法正确保存。只要我有它们,时间就会正确存储在数据库中,但 RoR 无法正确读取它们。为了解决这个问题,我必须将从数据库获得的所有时间转换为 UTC。我必须相信有更好的方法。
我也尝试设置 ENV['TZ'],但这似乎没有任何作用。
ENV['TZ'] = "US/Central"
任何帮助将不胜感激。
谢谢!