Puede tener una aplicación llamada core
o similar, donde se incluyen cosas que no están relacionadas con ninguna aplicación. Estos pueden ser comandos de gestión, etiquetas temáticas, modelos y tal vez otros módulos como formularios, decoradores, middleware. Puede usar su directorio de proyecto en sí mismo como aplicación "core".
Aquí es cómo tiendo a estructurar mis proyectos:
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
Mi INSTALLED_APPS
por lo general se ve así:
INSTALLED_APPS = (
...
'project_name',
'project_name.not_reusable_app1',
'reusable_app1',
...
)
que no dan ningún tratamiento especial a django aplicaciones compred con otros paquetes de Python . Por ejemplo, no los incluyo en apps
o directorio similar.
Está claro que mis aplicaciones no reutilizables son parte del proyecto. Las aplicaciones no reutilizables en el proyecto generalmente usan varias utilidades del proyecto, por ejemplo project_name.utils.decorators.some_kind_of_deco
.
Si no desea utilizar el proyecto como aplicación, como he mencionado, puede mover todo al project_name.core
.
Excelente sugerencia; ¡Gracias! – payne
Fui para la aplicación 'core' como weel –