小编Vic*_*r T的帖子

Django 在 DATABASES 中设置 TIME_ZONE 对“日期”查找没有影响

2019 年 4 月 8 日更新

\n\n

这是 django<=2.2 的一个已知错误,自此PR起已修复

\n\n

===================================

\n\n

(我们假设mysql后端)

\n\n

我可以在 中设置TIME_ZONE多次settings.py,一次用于全局 django 应用程序,一次用于每个数据库(请参阅https://docs.djangoproject.com/en/1.11/ref/settings/#time-zone (ref1))

\n\n

典型用法是用于日期时间不以 UTC 存储的旧数据库。

\n\n

没有日期查找

\n\n

查询我的数据库会考虑此设置,例如:

\n\n

settings.py

\n\n
USE_TZ = True\nTIME_ZONE = \'Europe/Paris\' # tz1\nDATABASES = {\n    \'legacy\': {\n        \'ENGINE\': \'django.db.backends.mysql\',\n        \'OPTIONS\': {\n            \'read_default_file\': \'....cnf\',\n        },\n        \'TIME_ZONE\': \'Europe/Paris\', # tz2\n    },\n    \'default\' : {\n        \'ENGINE\': \'django.db.backends.mysql\',\n        \'OPTIONS\': {\n            \'read_default_file\': \'....cnf\',\n        },\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

在里面manage.py shell

\n\n
>>> dt = …
Run Code Online (Sandbox Code Playgroud)

python django django-database django-settings django-1.11

5
推荐指数
1
解决办法
1万
查看次数