Django的配置文件settings.py包含了基本上所有的Django安装的配置,这里解释下配置是如何生效的,还有有哪些可用的配置。
基础
配置文件是一个Python的模块,然后里面有一些模块级的变量。如下:
SECRET_KEY = 'y3p1+h((i_v_#_b5#(&%v_okp7x!ieq=qg4n^f$+4*i*w-xop)'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
ALLOWED_HOSTS = ['*']
因为配置文件是Python的模块,里面不允许有语法的错误。也可以从其它的配置文件中导入配置。
默认配置
django的配置文件不一定非要定义配置,如果不需要的话不定义也是可以的。每一个配置都有相对合理的默认值,这些默认值默认位于django/conf/global_settings.py
文件中。
在使用自己的配置的时候,直接在自己配置文件中定义就可以了,指定的配置Django会覆盖默认的配置的。
如果想看有哪些配置与默认的配置不一样,执行:
python manage.py diffsettings
在代码中使用配置
因为配置文件是一个python的模块,在使用的时候导入django.conf.settings对象就可以。代码如下:
from django.conf import settings
if settings.DEBUG:
# Do something
# 做你想做的事情
注意settings是个对象,不能直接引入settings内部的属性。
# 错误语法
from django.conf.settings import DEBUG # This won't work.
最后
这次主要了解了下Django配置相关的东西,对Django的配置有了大体的认识。想要查看Django更多的配置,参考官方的配置参考