Rails活动记录时区



我已将应用程序的默认时区设置为太平洋时间。

config.time_zone = 'Pacific Time (US & Canada)'
config.active_record.default_timezone = 'Pacific Time (US & Canada)'

我面临的问题是,当我在rails控制台中查询时。。例如

Transaction.last 

它返回一个类似的对象

=> #<Transaction id: 4926, offer_id: 4926, date: "2014-10-08 04:23:03", reference: "CBRNCUQU", driver_id: 464, driver_type: "User", amount: 80.0, status: "paid", created_at: "2014-10-08 04:23:03", updated_at: "2014-10-07 22:15:27">

这里显示的日期字段是date: "2014-10-08 04:23:03",它是UTC,实际上现在PDT中的日期是2014-10-07

但如果我像这样查询Transaction.last.date,它会返回

Tue, 07 Oct 2014 21:23:03 PDT -07:00

哪个是正确的和预期的输出

我面临的问题是,我想在我的页面中显示当前日期交易的详细信息,它会在我的网页中返回一个带有未来日期的交易。发生这种情况的原因可能是数据库将记录保存在UTC有什么办法可以解决这个问题吗。

正如我从api文档中看到的那样http://apidock.com/rails/ActiveRecord/Base/default_timezone/class

default_timezone只接受:local:utc

相关内容

  • 没有找到相关文章

最新更新