2013-10-07 31 views
0

如果還有其他方法,請插入其中,但我最常看到的是這兩個,它們都存在於django源文件中。在Django中訪問設置信息的首選方法是什麼?

if settings.DEBUG:

if hasattr(settings, 'POSTGIS_VERSION'):

後者具有一個默認的,但在案件的優勢在哪裏默認將是一個錯誤(缺少的東西)是它更好地使用第一版?什麼是默認值規則,什麼時候應該將它放在settings.py文件中,以及什麼時候應該將它直接包含在源代碼中?

回答

2

當您在應用程序的默認設置中訪問由您的應用程序定義的設置時,我會建議if settings.name: - 默認設置已由您定義。另一方面,當寫一個外部應用程序 - 我建議if hasattr(settings, 'name'): - 你不能指望你的應用程序用戶將定義所有的默認值。

0

修改第一個答案。相當可靠和可讀的方式從Django中得到的東西:

variable = getattr(settings, 'MY_SETTING', None) 

現在變量等於一些設置或無,如果沒有這樣的設置都沒有。

相關問題