Как исправить ошибку Modulenotfounderror при использовании внешних файлов с os.environ.setdefault в Django

Я поместил свой модуль в папку и попытался использовать его в связке с Django.

вот пример структуры моего проекта (каталог my_module не является приложением django, просто мой пользовательский пакет):

    mysite
    |-- my_module
    |   |-- __init__.py
    |   |-- mymodule1.py
    |   |-- mymodule2.py
    |   |-- mymodule3.py
    |-- mysite
    |   |-- settings.py
    |   |-- base.py
    |   |-- dev.py
    |   |-- production.py
    |   |--wsgi.py
    |-- myapp
    |-- manage.py

в my_module/mymodule1.py

import os
import django

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
django.setup()

if __name__ == '__main__':
# my code...

Когда я запускаю этот файл python в Pycharm, он работает без проблем. Но когда я запускаю эту терминальную команду 'python mymodule.py' в каталоге my_module, возникает ошибка "ModuleNotFoundError: No module named 'mysite'"

Как я могу решить эту проблему? и В чем разница между запуском в Pycharm и командой терминала?

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