这是一个非常初学的问题。但我很难过。如何在我的model.py中引用Django设置变量?
NameError: name 'PRIVATE_DIR' is not defined
还尝试了许多其他内容,包括settings.PRIVATE_DIR
settings.py:
PRIVATE_DIR = '/home/me/django_projects/myproject/storage_dir'
models.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)
这样做的正确方法是什么?
答案 0 :(得分:211)
试试这个:from django.conf import settings
然后
settings.VARIABLE
访问该变量。
答案 1 :(得分:71)
from django.conf import settings
PRIVATE_DIR = getattr(settings, "PRIVATE_DIR", None)
如果显示None
,则在设置中未定义变量时,您将设置默认值。