0

我正在开发一个可重用的 django 应用程序,我想通过 settings.py 中的 GLOBAL VARIABLES 对其进行配置。

我希望这些是可选的,所以我在我的应用程序中的 conf.py 模块中提供了默认值,其中我有以下内容:

GLOBAL_1 = "Def value for global 1"
GLOBAL_2 = "Def value for global 2"
GLOBAL_3 = "Def value for global 3"

try:
    from settings import GLOBAL_1
except:
    pass

try:
    from settings import GLOBAL_2
except:
    pass

...

因此,如果它们存在,默认值可以被 settings.py 中的配置覆盖。这种方法不会针对太多变量进行扩展,所以我想知道是否有一种不那么冗长的方法来做到这一点。也许我应该使用 eval()?

非常感谢!

4

1 回答 1

1
GLOBAL_1 = getattr(settings, 'GLOBAL_1', 'Def value for global 1')
于 2011-11-12T18:51:53.563 回答