django timezone.now 小了8小时

django.util.timezone.now()

django

原因:

  • 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()完全相同

posted @ 2024-08-29 21:43  二月雪  阅读(2)  评论(0编辑  收藏  举报