Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/10/2014, 15:23
Avatar de kojicomics
kojicomics
 
Fecha de Ingreso: junio-2013
Mensajes: 49
Antigüedad: 11 años, 5 meses
Puntos: 1
Respuesta: Importar modelo en settings.py

He encontrado una solución pero no sé si es la más óptima

He estado buscando información, y por lo que pude entender, el settings.py primero obtiene de INSTALLED_APPS las aplicaciones que debe instalar, por lo que al importar una aplicación en él se produce una dependencia circular dando lugar a errores al gestionar el resto de acciones (en mi caso no encontraba la SECRET_KEY)

Yo no estoy trabajando con un settings.py monolítico, sino que tengo 3 ficheros: base.py local.py y production.py

Tanto en local.py como en production.py el import se produce correctamente, por lo tanto, lo que hice fue crear un nuevo fichero que realizase el trabajo que necesitaba (obtener los valores de la variable LANGUAGES de un modelo dinámicamente):

Código Python:
Ver original
  1. from apps.languages.models import Language
  2.  
  3. import django
  4.  
  5. django.setup()
  6.  
  7. LANGUAGES = tuple(Language.objects.all().values_list('locale', 'name'))

Y por último importo el módulo en local.py y production.py y ya funciona correctamente:
Código Python:
Ver original
  1. from .languages import *

Un saludo