【发布时间】:2018-01-22 14:13:44
【问题描述】:
我正在使用 PostgreSQL 来存储一个带有 DateTimeField 的对象。DateTimeField 正在使用 auto_now_add 选项。
它是从Django Rest Framework 中的序列化程序自动创建的。
如Django docs 中所述,我尝试获取本地时区并激活它。
from django.utils.timezone import localtime, get_current_timezone
tz = get_current_timezone()
timezone.activate(tz)
session.started_at = localtime(session.started_at)
在模板index.html中,我也尝试加载时区。
{% localtime on %}
Session: start time {{ item.session.started_at }}
{% endlocaltime %}
在settings.py
USE_TZ = True
TIME_ZONE = 'UTC'
我使用的是 GMT+7 时区,但它仍然在模板上显示 UTC 时间。
我正在使用 Django 开发服务器进行测试。
我错过了什么吗?
【问题讨论】:
-
为什么不呢?您将时区设置为UTC?您的客户端(浏览器)在 GMT+7 中,但 Django 不知道。
-
如here 所述,它是默认时区。有
current time zone用于渲染。
标签: python django postgresql