Python Flask:是否应将我自己的配置添加到app.config?
考虑一个Flask应用程序,它导入一个配置类,该类从文件(本例中为YAML)生成配置:Python Flask:是否应将我自己的配置添加到app.config?,python,flask,config,Python,Flask,Config,考虑一个Flask应用程序,它导入一个配置类,该类从文件(本例中为YAML)生成配置: 从配置导入ConfigGenerator app=烧瓶(名称) 在Flask应用程序中,配置对象的正确位置是什么? 它应该位于模块命名空间中: config=ConfigGenerator('/etc/server/config.yaml') 或者在app.config中: app.config['my_config']=ConfigGenerator('/etc/server/config.yaml')
从配置导入ConfigGenerator
app=烧瓶(名称)
在Flask应用程序中,配置对象的正确位置是什么?
它应该位于模块命名空间中:
config=ConfigGenerator('/etc/server/config.yaml')
或者在app.config
中:
app.config['my_config']=ConfigGenerator('/etc/server/config.yaml'))
甚至直接在应用程序下:
app.myconfig=ConfigGenerator('/etc/server/config.yaml')
我认为这三个选项都可以,但我想知道是否有任何特定于样式或烧瓶的注意事项需要考虑。前两个选项没有太大不同,只是您现在不必单独导入配置对象。换句话说,通过使用app.config
,您可以在Flask应用程序中访问配置,只要您已经可以访问当前的\u应用程序
但是,不应使用最后一个选项,不要向Flask对象添加属性。我不确定“不必单独导入配置对象”是什么意思。我想我必须从配置导入ConfigGenerator
。@AdamMatan:是的,在主文件中。但是,如果您在Flask应用程序中使用单独的模块,那么这些单独的模块现在可以访问current_app.config['my_config']
。