属性错误:模块'collections'没有属性'Iterator' python 3.10 django 2.0

hgtggwj0  于 2022-11-26  发布在  Go
关注(0)|答案(2)|浏览(886)

你好,它是一个克隆项目,但当尝试“python manage.py makemigrations”时,我得到这个错误,如何修复它?
需求

django==2.0 django-ckeditor==5.4.0
django-cleanup==2.1.0    django-crispy-forms==1.7.2
django-js-asset==1.0.0

this error
error 2

v6ylcynt

v6ylcynt1#

你使用的是一个非常旧的Django版本(我们目前的版本是4.1.x!),它与python3.10不兼容。
Iteratorcollections移到了collections.abc(我想是在3.3版本中)。
为了解决这个问题,你必须将你的python版本降级到python3.3之前的版本(我想这是很不幸的),或者升级你的django版本(这可能很难,取决于你的应用程序)。
实际上,你可以在django repo中的一个4年前的提交中看到这个变化:https://github.com/django/django/commit/aba9763b5117494ca1ef1e420397e3845ad5b262
祝你好运!

bttbmeg0

bttbmeg02#

一个适用于python3.10的简单修复程序:
在目录**/usr/lib/python3.10/collections/init.py**下

注意:路径可能会根据

添加以下代码行:

from _collections_abc import Iterator

相关问题