【发布时间】:2020-12-11 12:55:37
【问题描述】:
我有一个这样的模型:
class Entry(models.Model):
topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
text = models.TextField()
date_added = models.DateTimeField(default=timezone.now())
模板中显示的添加日期:
{% localtime on %}
{{ entry.date_added|date:'d M, Y H:i'}}
{% endlocaltime %}
正如https://docs.djangoproject.com/en/3.0/topics/i18n/timezones 中所建议的那样。
在我的setting.py中,我的USE_TZ = True
但是,输出给了我datetime.datetime(2020, 8, 22, 9, 20, 16, 439533, tzinfo=<UTC>)
或 2020 年 8 月 22 日 9:20 在我的网页中
为什么输出是 UTC?据我了解,知道日期时间意味着它遵循用户的时区。我的时区是 UTC+7,所以应该是 2020 年 8 月 22 日 16:20。
我读过 Retrieve timezone aware DateTimeField in Django 建议更改 TIME_ZONE = 但这不会让它不知道吗?
我能做些什么来解决它?我希望日期时间遵循用户的时区
谢谢
【问题讨论】:
-
您需要哪个时区??