2013-10-07 25 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) 

现在变量等于一些设置或无,如果没有这样的设置都没有。

相关问题