系统调用为格林威治时间,中国在东八区,需要加八小时得到中国时间。
这时需要在settings.py中进行设置
TIME_ZONE = 'Asia/Shanghai'
但经过测试这时不足以修改前端或数据库存储的时间。查阅文档后发现,还需要修改
USE_TZ = False
此时调用时间即为中国的时间
源码证明:
timezone.py(224-232)
def now():
"""
Return an aware or naive datetime.datetime, depending on settings.USE_TZ.
"""
if settings.USE_TZ:
# timeit shows that datetime.now(tz=utc) is 24% slower
return datetime.utcnow().replace(tzinfo=utc)
else:
return datetime.now()
感觉比文档好看多了
博客介绍了将系统调用时间从格林威治时间转换为中国时间的方法。需在settings.py中设置,经测试仅这样不足以修改前端或数据库存储时间,查阅文档后还需进一步修改,调用时间即为中国时间,还给出了源码证明位置。
2062





