从 ruby 开始将时间存储在 postgresql 中

Store time in postgresql from ruby

我正在尝试在 postgresql 中保存一些时间属性(小时:Mitues),但在保存数据之前我不明白发生了什么,因为 INSERT 是 运行。

我可以在我的日志中看到 "time:\n- \n-2016-01-21 22:00:00.000000000 +01:00",但它在数据库中变成了“21:00:00”。

我想这与 +01:00 偏移有关,但我已尝试在我的应用程序中设置配置时区,但没有任何改变...

我的应用程序是 API,它会更新此属性以及许多其他属性。

create_table :things do |t|

  t.time :time

end

这里更新了:

collection.each do |resource|
  resource.update_attributes resource_params[resource.id.to_s].first
end

是的,你是对的。您的数据保存在数据库中的时区是 UTC。您应该在 application.rb 中进行的配置是:

config.active_record.default_timezone = :local

如果您还没有明确声明您的时区,您应该明确声明:

config.time_zone = 'Madrid'