Python flask app.config.from_对象是如何工作的?

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

现在!我已经写了一个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_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方法并在其中加载配置,它现在正在工作!非常感谢。