我的一个模块中有一个全局标志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
这将使用正确的设置,无论是 fromproduction.py
还是 from development.py
,取决于RUNNING_MODE
。
是否有任何可接受的方法来处理这种设置?我将如何构建目录/模块,以便仅通过更改整个配置RUNNING_MODE
来透明地发生?config/top.py
注意:我不希望在构建过程中使用它,而是将其嵌入到模块结构中。也就是说,我不希望构建过程修改我的任何模块。