Pylint-django показывает ошибку ModuleNotFoundError: Нет модуля с именем 'myapp'

Я установил pylint и pylint-django. Затем последовали docs.

Мой django проект построен следующим образом:

/path/to/project/myapp/settings_test.py
/path/to/project/manage.py

Выполнение следующей команды:

cd /path/to/project/
export DJANGO_SETTINGS_MODULE=myapp.settings_test
find . -name "*.py" | xargs pylint --load-plugins pylint_django --django-settings-module=myapp.settings_test

Я столкнулся с этой ошибкой: ошибки:

Traceback (most recent call last):
  File "/home/ar2015/.local/bin/pylint", line 8, in <module>
    sys.exit(run_pylint())
  File "/home/ar2015/.local/lib/python3.8/site-packages/pylint/__init__.py", line 35, in run_pylint
    PylintRun(argv or sys.argv[1:])
  File "/home/ar2015/.local/lib/python3.8/site-packages/pylint/lint/run.py", line 207, in __init__
    linter.check(args)
  File "/home/ar2015/.local/lib/python3.8/site-packages/pylint/lint/pylinter.py", line 685, in check
    with self._astroid_module_checker() as check_astroid_module:
  File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/home/ar2015/.local/lib/python3.8/site-packages/pylint/lint/pylinter.py", line 982, in _astroid_module_checker
    checker.open()
  File "/home/ar2015/.local/lib/python3.8/site-packages/pylint_django/checkers/foreign_key_strings.py", line 92, in open
    django.setup()
  File "/home/ar2015/.local/lib/python3.8/site-packages/django/__init__.py", line 19, in setup
    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  File "/home/ar2015/.local/lib/python3.8/site-packages/django/conf/__init__.py", line 82, in __getattr__
    self._setup(name)
  File "/home/ar2015/.local/lib/python3.8/site-packages/django/conf/__init__.py", line 69, in _setup
    self._wrapped = Settings(settings_module)
  File "/home/ar2015/.local/lib/python3.8/site-packages/django/conf/__init__.py", line 170, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'myapp'

Примечание: следующее не помогло:

python3 manage.py makemigrations
python3 manage.py migrate
pip install django-filter
touch __init__.py
export DJANGO_SETTINGS_MODULE=myapp

.

Скорее всего, ваш модуль настроек отсутствует в пути поиска импорта Python. Чтобы добавить его на время текущей сессии, выполните из каталога проекта:

export PYTHONPATH=$PYTHONPATH:$PWD

Как сделать это постоянным, объясняется в этом ответе.

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