【发布时间】:2016-10-16 12:59:35
【问题描述】:
我在 Rails 应用程序中使用了 Time.new 方法来获取当前日期,我想将此日期存储到 datetime 类型的变量中。我正在使用postgresql。现在,如果我使用 pgAdminIII 手动将这种格式的日期插入到表中,它工作正常,但如果我尝试通过控制器代码将时间插入到表中,那么它会将不同的日期时间存储到表中。
例如假设当前时间是:-
2016-06-15 17:29:29
如果我通过从网页复制这一行手动将此日期和时间插入表中,那么它工作正常。
但我将其存储到表中的控制器代码正在插入其他内容,例如
2016-06-15 11:41:39
注意:我只使用了Time.new(我的代码中没有指定时间区域)
【问题讨论】:
-
Rails 将转换为 UTC 的日期时间存储在数据库中。所以我在这里没有看到问题。
-
分享一些代码和你希望看到的最终结果。
-
请在 application.rb config.time_zone = 'your timezone' 中检查您的时区。当您在其中指定时区时,时间值存储在数据库中。
-
但在网页上显示时我也需要将其转换为UTC。它以 IST 格式在网页中显示时间,但我需要 UTC
标签: ruby-on-rails ruby postgresql time insert