AttributeError: модуль 'collections' не имеет атрибута 'Iterator' python 3.10 django 2.0
Здравствуйте, это клон проекта, но когда я пытаюсь "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
Вы используете очень старую версию Django (мы сейчас находимся в версии 4.1.x!), которая несовместима с python3.10.
Iterator был перемещен из collections в collections.abc (думаю, в версии 3.3).
Для устранения этой проблемы вам нужно либо понизить версию вашего python до чего-то до python3.3 (что весьма неудачно, я думаю), либо обновить версию django (что может быть очень сложно, в зависимости от вашего приложения).
Вы можете увидеть это изменение в коммите 4-летней давности в репозитории django: https://github.com/django/django/commit/aba9763b5117494ca1ef1e420397e3845ad5b262.
Удачи!
Простое исправление, которое работает для python3.10:
В каталоге /usr/lib/python3.10/collections/init.py
Примечание: Путь может измениться в зависимости
Добавьте эту строку кода:
from _collections_abc import Iterator