Мы обычно настраиваем наши проекты следующим образом:
/site/
__init__.py
manage.py
settings.py
urls.py
/apps/
__init__.py
/appA/
__init__.py
/appB/
__init__.py
/lib/
__init__.py
/django-lib/
__init__.py
/shared-lib/
__init__.py
Просто убедитесь, что каталог вашего сайта находится на вашем пути Python:
import sys
sys.path.append('/path/to/site/')
Также убедитесь, что init.pyсуществует на сайте, в приложениях и в библиотеке, поэтому их можно рассматривать как модули с использованием импорта точечных обозначений (import site.lib.shared-lib)
Редактировать:
В ответ на ваш вопрос относительно вашегопуть к Python, все это связано с тем, где находится ваш файл manage.py или эквивалентный файл.Если он находится в каталоге / site / (рядом с приложениями и lib), тогда с PYTHONPATH все должно быть в порядке.
Необходимо убедиться, что в каждом каталоге содержится пустой файл с именем __init__.py
.Это говорит Python обрабатывать этот каталог как модуль.См. Новое и улучшенное искусство ASCII выше.