Модуль не найден: как установить django-parsley в проект Django?
Это такой элементарный вопрос, извините. Я установил django-parsley с поэзией (poetry add django-parsley). Он четко установлен в моем файле pyproject.toml. Однако, когда я пытаюсь запустить python manage.py runserver, я получаю следующую ошибку:
from parsley.decorators import parsleyfy
ModuleNotFoundError: No module named 'parsley'
Я также попробовал добавить 'parsley' к моему INSTALLED_APPS в settings.py. Это дает мне эту ошибку (возможно, из-за того, что я не добавил ее глобально с pip install?):
...some more errors...
File "C:\Program Files\Python310\lib\importlib\__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'parsley'
Что мне нужно сделать, чтобы иметь возможность импортировать его в файл python в моем проекте?
Я не знаком с поэзией, но я полагаю, что если вы создали проект с поэзией вместо обычной установки django, она также понадобится вам для запуска команд. Так что попробуйте:
poetry run django-admin.py startproject [name of your project]
poetry run python manage.py createsuperuser
poetry run python manage.py runserver
# etc...
Я понял, в чем дело. На самом деле это проблема VSCode - обычно VSCode автоматически определяет подходящую виртуальную среду для проекта (в этом случае Poetry's по умолчанию автоматически создает специфическую для проекта venv).
Однако в этом проекте он не переключился. Чтобы исправить ситуацию, я выполнил команду Python: Select Interpreter и переключил venv на нужный проект. После этого он распознал папку site-packages и смог нормально импортировать.