【发布时间】:2021-12-24 16:24:45
【问题描述】:
在我的 django 项目中,我有一个模型,我在其中存储数据(在我的 read_date 字段中),并带有一个用于存储日期(带时区)的 DateTime 字段:
class Results(models.Model):
id = models.AutoField(primary_key=True)
device = models.ForeignKey(Device, null=True, on_delete=models.SET_NULL)
proj_code = models.CharField(max_length=400)
res_key = models.SlugField(max_length=80, verbose_name="Message unique key", unique=True)
read_date = models.DateTimeField(verbose_name="Datetime of vals readings")
unit = models.ForeignKey(ModbusDevice, null=True, on_delete=models.SET_NULL)
我使用时区在 settings.py 文件中设置:
TIME_ZONE = 'UTC+1'
USE_TZ = True
所以,问题是,当我通过 UTC+1 时区的更正格式化的 ditetime 时:
2021-11-12 10:39:59.495396+01:00
在我的数据库中我得到:
2021-11-12 9:39:59.495396+00
为什么我的存储值是 UTC+0 而不是使用传递的时区?
提前非常感谢
【问题讨论】:
标签: python-3.x django datetime django-timezone