Django时区导致的datetime时间比较报错

我们使用python 的datetime模块比较Django数据库Datetime字段的时候,可能会出现报错:

TypeError: can't compare offset-naive and offset-aware datetimes

这是因为两个时间不属于同一类型,offset-naive是不含时区的类型,而offset-aware是有时区类型,两者自然不能比较。
Django默认时区和datetime模块默认的now()时区格式是不一致的,所以才会出现这种问题

解决方案1:

Django时区导致的datetime时间比较报错

Django时区导致的datetime时间比较报错

解决方案2:

在比较的时候我们用datetime模块的UTC时间

datetime.utcnow()   # 获取当前UTC时间

这样获取到的时间格式和Django获取到的时间格式是一致的

上一篇:Redis入门指南之一(简介)


下一篇:Sunny-ngrok 解决外网访问内网问题