Postgres时区应该从UTC更改吗?

时间:2013-01-07 20:27:17

标签: ruby-on-rails postgresql timezone utc

我有一个cron,每小时在我的rails应用程序中运行一个脚本,寻找要运行的新事务。通常,这只会选择设置为当天开始的新交易,直到UTC的午夜,此时所有第二天的交易到期。我的rails应用程序在中部时间运行,但Postgres设置为UTC。由于我使用的是具有where子句的范围,并且now()用于比较日期,因此新一天的交易在傍晚(在美国)进行。将Postgres的时区切换到中部时间有什么不利之处吗?据我所知,它将以UTC记录所有时间戳,但会根据其时区设置运行查询。

1 个答案:

答案 0 :(得分:1)

您应该始终在应用程序中使用UTC,并且只在必要时执行到应用程序边缘的其他时区的转换 - 例如在控制器或视图中。

在您的查询中,在now()上执行一些date manipulation,将其转换为您需要的时区。