У вас может быть приложение под названием core
или подобное, в котором содержатся вещи, не связанные с каким-либо приложением.Это могут быть команды управления, шаблоны, модели и, возможно, другие модули, такие как формы, декораторы, промежуточное программное обеспечение.Вы можете использовать каталог своего проекта в качестве основного приложения.
Вот как я структурирую свои проекты:
project_name
not_reusable_app1
not_reusable_app2
templatetages
tempates
utils
models.py
settings.py
management
middleware.py
forms.py
processors.py
__init__.py
parts
reusable-app-1
reusable_app_1
setup.py
reusable-app-2
reurable-app-3
gereric-python-lib
django
setup.py
Мой INSTALLED_APPS
обычно выглядит так:
INSTALLED_APPS = (
...
'project_name',
'project_name.not_reusable_app1',
'reusable_app1',
...
)
Я не даю особого отношения к приложениям django, скомпилированным с другими пакетами python.Например, я не помещаю их в apps
или подобный каталог.
Ясно, что мои приложения, которые нельзя использовать повторно, являются частью проекта.Неиспользуемые приложения в проекте обычно используют различные утилиты из проекта, например project_name.utils.decorators.some_kind_of_deco
.
Если вам не нравится использовать проект в качестве приложения, как я уже говорил, вы можете переместить все в project_name.core
.