惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
Google DeepMind News
Google DeepMind News
G
Google Developers Blog
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
月光博客
月光博客
Jina AI
Jina AI
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
V
V2EX
WordPress大学
WordPress大学
T
The Blog of Author Tim Ferriss
Last Week in AI
Last Week in AI
B
Blog
博客园 - 叶小钗
小众软件
小众软件
Stack Overflow Blog
Stack Overflow Blog
P
Proofpoint News Feed
A
About on SuperTechFans
J
Java Code Geeks
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Y
Y Combinator Blog
Microsoft Security Blog
Microsoft Security Blog

Django - 分类 - cywhat's blog

Python创建并上传自己的pip依赖包 Django操作异步任务 ValueError:invalid UnorderedObjectListWarning:Pagination May Yield Inconsistent Results With an Unordered Object_list Django删除表重建 Django的csrf防御机制 Django连接Mysql配置 fonts.googleapis.com访问较慢[已解决] Django中的form表单校验
RuntimeWarning:DateTimeField Session.expire_date received...
cywhat · 2022-03-30 · via Django - 分类 - cywhat's blog

   约 288 字  预计阅读 1 分钟    次阅读     条评论

目录

前景

Django部署的web应用报警,内容如下:

1
"RuntimeWarning:DateTimeField Session.expire_date received a naive datetime"

原因:

1
2
3
4
这是一个跟时区有关的问题,错误里说到datetime字段得到一个naive datetime,而不是支持time zone的active datetime
由于USE_TZ设置为True,Django会自动根据所设的时区对时间进行转换
程序中和数据保存的时间都转UTC时间,只有模版渲染时会把时间转为TIME_ZONE所设置的时区的时间
使用datetime.datetime.utcnow()输出的是不带时区的utc时间,称为naive time

解决

1
2
3
4
5
6
7
from django.utils import timezone

#方法1
#datetime.now()   修改为-->    timezone.now()

#方法2
#datetime.now()   修改为-->    datetime.datetime.now(tz=timezone.utc)

关注一下再走吧

公众号 小程序

赞赏支持

微信打赏 支付宝打赏