django timezone.now 小了8小时
django.util.timezone.now()
原因:
setting.py
中设置了时区:
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_TZ = True
- 将
TIME_ZONE
时区改为:
TIME_ZONE = 'Asia/Shanghai' # 亚洲/上海
注:
-
USE_TZ = True
时, django中 在代码视图print(django.util.timezone.now())
和 存到数据库 中的时间,其实还是UTC时间;若数据库中存储的是UTC
时间,但在html模板显示的时候,会转成TIME_ZONE
所示的本地时间进行显示 -
USE_TZ = False
时,django.util.timezone.now()
输出时间与datetime.datetime.now()
完全相同