Django的配置文件settings.py包含了基本上所有的Django安裝的配置致盟,這里解釋下配置是如何生效的,還有有哪些可用的配置。
基礎(chǔ)
配置文件是一個(gè)Python的模塊,然后里面有一些模塊級(jí)的變量讳嘱。如下:
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 = ['*']
因?yàn)榕渲梦募荘ython的模塊,里面不允許有語法的錯(cuò)誤酿愧。也可以從其它的配置文件中導(dǎo)入配置沥潭。
默認(rèn)配置
django的配置文件不一定非要定義配置,如果不需要的話不定義也是可以的嬉挡。每一個(gè)配置都有相對合理的默認(rèn)值钝鸽,這些默認(rèn)值默認(rèn)位于django/conf/global_settings.py
文件中汇恤。
image
在使用自己的配置的時(shí)候,直接在自己配置文件中定義就可以了寞埠,指定的配置Django會(huì)覆蓋默認(rèn)的配置的屁置。
如果想看有哪些配置與默認(rèn)的配置不一樣,執(zhí)行:
python manage.py diffsettings
image
在代碼中使用配置
因?yàn)榕渲梦募且粋€(gè)python的模塊仁连,在使用的時(shí)候?qū)雂jango.conf.settings對象就可以蓝角。代碼如下:
from django.conf import settings
if settings.DEBUG:
# Do something
# 做你想做的事情
注意settings是個(gè)對象,不能直接引入settings內(nèi)部的屬性饭冬。
# 錯(cuò)誤語法
from django.conf.settings import DEBUG # This won't work.
最后
這次主要了解了下Django配置相關(guān)的東西使鹅,對Django的配置有了大體的認(rèn)識(shí)。想要查看Django更多的配置昌抠,參考官方的配置參考