Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Flask:是否应将我自己的配置添加到app.config?_Python_Flask_Config - Fatal编程技术网

Python Flask:是否应将我自己的配置添加到app.config?

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')

考虑一个Flask应用程序,它导入一个配置类,该类从文件(本例中为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']