我在rails应用程序中使用了Time.new方法来获取当前日期,我希望将此日期存储到datetime类型的变量中。我正在使用postgresql。现在,如果我使用pgAdminIII手动将此格式的日期插入表中,它工作正常,但如果我尝试通过控制器代码将时间插入表中,那么它将在表中存储不同的日期时间。
例如,假设当前时间是: -
2016-06-15 17:29:29
如果我通过从网页复制此行手动将此日期和时间插入表中,那么它正常工作。
但我的控制器代码将其存储到表中是插入其他内容,如
2016-06-15 11:41:39
注意:我只使用了Time.new(我的代码中未指定时区)
答案 0 :(得分:0)
只是活动记录使用utc作为时区。 如果您希望Active Record将时间存储在首选时区,请在此处更改
@Unroll
def "demo test: result should be #res if inp=#inp"() {
expect:
methodTest(inp) == res
where:
inp || res
"a" || true
"b" || false
}
参考:How to change default timezone for Active Record in Rails?