gdb 版本和gcc版本的对应关系_Python——django避坑(版本对应关系)

本文讨论了在使用Django框架时遇到的版本兼容性问题,特别是关于Django版本过旧导致的错误。文章指出,一些特定的错误可能是由于Django版本不支持Python的最新特性。作者分享了Python与Django的对应版本表,建议开发者在开始项目前选择兼容的版本以避免遇到此类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

django框架和python不必多说,写起代码来功能实现速度非常快,但是对于某些定制化修改不可避免有些小坑在其中,本篇将简单聊一聊python对应django版本的坑;

具体事例:

首先,相信使用django的朋友或多少碰到过以下报错:

前面写了好几个接口,功能实现的很顺利,有一个接口需要处理上传的图片,或者写完接口想要从管理面手动插入几条测试数据,然后接口一测或者测试数据一保存就蹦出来了500的状态码,然后报错信息主要就是下边的样子:

Exception Type:	RuntimeError
Exception Value:	
generator raised StopIteration
Exception Location:	/Users/dongchao/.virtualenvs/py_django/lib/python3.7/site-packages/django/http/multipartparser.py in read, line 337
Python Executable:	/Users/dongchao/.virtualenvs/py_django/bin/python
Python Version:	3.7.4

相关分析:

从报错状态来看就有点莫名其妙,然后generator raised StopIteration然后看相关代码也是框架中的代码,首先回去看一下自己调用接口的代码,完全没有使用迭代器,使用框架传递的参数也是完全正确;这时候思考下才想起来上网上找找答案,搜索了半天,不知道你会从哪里找到答案,我一般最终答案总在stackoverflow找到的答案:反正答案总是,你的django版本太旧了;

Your Django is very old and you need to update. This is a Python 3.7 compatibility problem that the Django devs already fixed four years ago, back when it was just a PendingDeprecationWarning on Python 3.5.

In fact, you are on the very last Django version that doesn't have the fix. Even 1.8.6 has the fix.

关键是连续碰到不同问题都是指向这样的答案,功能接口实现的七七八八,最后出现这样的幺蛾子是在有点痛心,整理了下资料,汇总下python对应django适配版本,让更多人使用时候对应好版本避免继续踩坑;

相关结论:

以下是整理相关python对应django版本的对应表,开始django前建议根据匹配版本避坑,如有相关问题可私信共同探讨;

Django version ——Python versions

1.11 —— 2.7, 3.4, 3.5, 3.6, 3.7 (added in 1.11.17)

1.8 —— 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5

1.9,1.10 —— 2.7,3.4,3.5

2.0 —— 3.4, 3.5, 3.6, 3.7

2.1, 2.2 —— 3.5, 3.6, 3.7

3.0, 3.1 —— 3.6, 3.7, 3.8

另外对于python和mysql对应版本参考如下:(想上图表,貌似没看到知乎有图表编辑功能,上图片了)

16301a5b22b1349eb04f2f1269d43bb7.png
python——mysql对应

如有问题请私信给我;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值