【发布时间】:2013-12-14 09:08:28
【问题描述】:
我的一个模块中有一个全局标志,config/top.py:
RUNNING_MODE = "production" # could also be "development", set manually
根据这个标志,我想包括一些生产/开发设置。比如在production.py我想拥有:
LOG_LEVEL = "WARNING"
在development.py:
LOG_LEVEL = "INFO"
(还有很多设置需要设置)
目标是能够在我的任何模块中透明地使用这些设置,比如说test.py:
from config.settings import LOG_LEVEL
这将使用来自production.py 或development.py 的正确设置,具体取决于RUNNING_MODE。
是否有任何公认的方法来处理这种设置?我将如何构建目录/模块,以便仅通过更改 config/top.py 中的 RUNNING_MODE 就可以透明地进行整个配置?
注意:我不希望在构建过程中使用它,而是将其嵌入到模块结构中。也就是说,我不希望构建过程修改我的任何模块。
【问题讨论】: