如何在 Django 中自定义数据库连接设置的时区?

How to customize database connection settings' timezone in django?

我正在研究 Django 数据库后端。我发现日期时间值的时区被 django 来回更改,同时将日期保存到数据库中以及检索它们。在此转换过程中,django 使用数据库连接的时区设置。

我看到默认情况下,对于 sqlite 数据库,'UTC' 是时区。我想在 Django 应用程序启动期间更改数据库连接选项。我该怎么做?

提前致谢。

来自Django官方文档:

When support for time zones is enabled, Django stores datetime information in UTC in the database, uses time-zone-aware datetime objects internally, and translates them to the end user’s time zone in templates and forms.

Time zone support is disabled by default.


因为如果默认禁用时区支持,您需要手动指定您希望 Django 支持它。您可以在 settings.py 中这样做:例如,如果您想要 UTC +1,则使用:

# enable time zone support
USE_TZ = True

# select a timezone
TIME_ZONE = 'Europe/Rome'

引用来自 Django 官方文档,您可以访问 here。我强烈建议阅读,他们的文档真的是 clear/useful.

此外,如果您需要其他时区,这里列出了您可以使用的所有可用时区 here, which I found from