Модуль не найден: как установить 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 и смог нормально импортировать.

Вернуться на верх