• Django ORM存储datetime 时间误差8小时问题


    今天使用django ORM 将获取到的时间入库,并未出现问题,但是后来发现时间晚了8小时,经查询Django官方文档发现获取本地时间和UTC时间有差别。

    首先科普下:
    UTC是协调世界时 UTC相当于本初子午线(即经度0度)上的平均太阳时,过去曾用格林威治平均时(GMT)来表示.北京时间比UTC时间早8小时,以1999年1月1日0000UTC为例,UTC时间是零点,北京时间为1999年1月1日早上8点整

    错误如图:

    解决如下:

    第一种:修改settings中的配置项

    找到settings中的USE_TZ= True,把True改成False即可

    第二种:在函数直接传递时间参数时,确保时间已经转换成UTC时间

    import datetime
    from django.utils.timezone import utc
    now = datetime.datetime.utcnow().replace(tzinfo=utc)
  • 相关阅读:
    第十三周学习进度条
    冲刺第四天
    第二天冲刺
    第三天冲刺
    第一天冲刺
    课下作业
    第十二周学习进度条
    课下作业
    webp与png、jpg相互转换
    Node疑难解决
  • 原文地址:https://www.cnblogs.com/xcsg/p/10708581.html
Copyright © 2020-2023  润新知