gpt4 book ai didi

python - 我们可以拥有没有时区的 Django DateTimeField 吗?

转载 作者:太空狗 更新时间:2023-10-29 20:49:26 25 4
gpt4 key购买 nike

我搜索过这个,但找不到任何注释或教程。

最佳答案

当您在设置中设置 USE_TZ = True(请参阅 USE_TZ 了解更多信息)时,Django 会在数据库中以 UTC 格式存储日期和时间信息,否则它将存储原始日期时间(日期时间没有时区)。

为方便起见,django-admin startproject 创建的默认 settings.py 文件包括 USE_TZ = True

因此您必须在设置中设置 USE_TZ = False 以避免附加时区。

注意:但是,您不能仅为特定字段分离时区。按照我上面的建议,你从整个数据库中分离了时区,所以我的猜测是最好使用 CharField 来存储没有时区的日期。

您可以尝试覆盖默认保存处理程序并从 saving 之前的 DatetimeField 中删除时区通过为您的模型定义保存方法,将项目存入数据库:

def save(self, *args, **kwargs):
self.datetime_field = self.datetime_field.replace(tzinfo=None)
super(MyModel, self).save(*args, **kwargs)

关于python - 我们可以拥有没有时区的 Django DateTimeField 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35884639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com