Pregunta ¿Cómo hago referencia a una variable de configuración django en mi models.py?


Esta es una pregunta para principiantes. Pero estoy perplejo. ¿Cómo hago referencia a una variable de configuración de django en mi model.py?

NameError: name 'PRIVATE_DIR' no está definido También probé muchas otras cosas incluyendo settings.PRIVATE_DIR

¿Cuál es la forma correcta de hacer esto?

--------- settings.py -------------

PRIVATE_DIR = '/home/me/django_projects/myproject/storage_dir'

--------- model.py ---------------

# Problem is here.
from django.core.files.storage import FileSystemStorage

fs = FileSystemStorage(location=PRIVATE_DIR)

class Customer(models.Model): 
    lastName = models.CharField(max_length=20) 
    firstName = models.CharField(max_length=20) 
    image = models.ImageField(storage=fs, upload_to='photos', blank=True, null=True)

75
2017-10-23 17:23


origen


Respuestas:


Prueba con esto: from django.conf import settings


163
2017-10-23 17:31



from django.conf import settings

PRIVATE_DIR = getattr(settings, "PRIVATE_DIR", None)

En donde dice None, pondrá un valor predeterminado en caso de que la variable no esté definida en la configuración.


60
2018-01-31 02:07