Siempre me he preguntado cuál es la mejor manera de tener archivos settings.py por aplicación. De manera que la configuración relacionada con la aplicación puede estar en el archivo settings.py de la aplicación o en el archivo settings.py del proyecto.
Estoy preguntando esto ahora porque planeo lanzar una aplicación que he desarrollado y quiero que sea reutilizable. Entonces, en el archivo app/settings.py pondría los valores de configuración predeterminados.
Más precisamente, tengo una aplicación de correos electrónicos, que quiero que sea reutilizable. La estructura es la siguiente:
- emails - settings.py - tasks.py - ... - my_project - settings.py En el archivo emails/settings.py tengo los valores predeterminados para los parámetros de configuración:
USE_EMAIL_DIGEST = True EMAIL_DIGEST_PERIOD = 24*3600 Luego, en my_project/settings.py algunos de esos parámetros:
EMAIL_DIGEST_PERIOD = 12*3600 ¿Cuál es la mejor opción para acceder al EMAIL_DIGEST_PERIOD desde el archivo emails/tasks.py ? Actualmente estoy haciendo:
from django.conf import settings import emails.settings as esettings getattr(settings, "EMAIL_DIGEST_PERIOD", esettings.EMAIL_DIGEST_PERIOD)Pero creo que es muy detallado.