关于时区oracle和django的困惑

时间:2018-01-19 11:47:23

标签: python django oracle datetime

我在ubuntu-14.04上运行django app,数据库是oracle。

时区如下

django- settings - TIME_ZONE = 'UTC'

ubuntu - Asia/Kolkata

oracle dbtimezone - UTC
oracle sessiontimezone - Asia/Kolkata #this is via sqldeveloper

将日期时间存储到db中我正在执行以下操作。

datetime.datetime.now(timezone.utc)

我得到的错误是time can not be past

我不想更改代码行。我可以设置我的Ubuntu或oracle的时区,因为那是我的开发环境。

2 个答案:

答案 0 :(得分:0)

如果Django未将时区传递给Oracle客户端,则使用ORA_SDTZ环境变量。您的SQL Developer会话时区可能与Django中使用的时区非常不同。

答案 1 :(得分:0)

最后使用此UTC特定命令将我的本地计算机的时区设置为timedatectl set-timezone UTC