Python flask app.config.from_对象是如何工作的?
现在!我已经写了一个python项目,我提到了flask。当我编写配置模块时,我遇到了一个问题。下面的示例代码不会像我预期的那样工作Python flask app.config.from_对象是如何工作的?,python,Python,现在!我已经写了一个python项目,我提到了flask。当我编写配置模块时,我遇到了一个问题。下面的示例代码不会像我预期的那样工作 class ConfigSample: PREFIX = '' MAIN_SPLIT = [] MESSAGE_ID = 'message_id' DEVICE_ID = 'device_id' HOST = '127.0.0.1' PORT = 5555 DEBUG = True ESCAPE_LI
class ConfigSample:
PREFIX = ''
MAIN_SPLIT = []
MESSAGE_ID = 'message_id'
DEVICE_ID = 'device_id'
HOST = '127.0.0.1'
PORT = 5555
DEBUG = True
ESCAPE_LIST = {}
class Config(dict):
def from_object(self, obj):
for key in dir(obj):
if key.isupper():
self[key] = getattr(obj, key)
class SampleForTestConfigDict:
config = Config()
def __init__(self):
print self.config.get('HOST', 'default host')
if __name__ == '__main__':
p = SampleForTestConfigDict()
#: This config method can be easy load!
p.config.from_object(ConfigSample)
#: There also another config method
p.config['ak'] = 'kkkk'
print p.config
我想在SampleForTestConfigDict init方法中使用配置。但是在我通过'p.config.from_object'分配它之前,init方法已经运行,我如何解决这个问题 不要在
\uuuu init\uuuu
中打印配置值,除非事先初始化self.config
。SampleForTestConfigDict
的具体用途是什么?你的帖子不清楚,你说得对!但在Flask中,在配置应用程序之前,您总是有一个应用程序!当我阅读Flask的源代码时,我发现()位于369行,我不知道make_config方法是如何工作的。Flask
对象包含一系列参数,并且有许多设置配置实例的默认值make\u config
在Flask期间基于default\u config
创建一个config\u类
的实例。\uuuuuu init\uuuuu
。是的,我定义了一个make\u config方法并在其中加载配置,它现在正在工作!非常感谢。