考虑一个Flask应用程序,该应用程序导入一个配置类,该配置类从文件(在此示例中为YAML)生成配置:
from config import ConfigGenerator
app = Flask(__name__)
Flask应用程序中配置对象的正确位置是什么?
它应该在模块名称空间中:
config = ConfigGenerator('/etc/server/config.yaml')
或在app.config
:
app.config['my_config'] = ConfigGenerator('/etc/server/config.yaml')
甚至直接在下面app
:
app.myconfig = ConfigGenerator('/etc/server/config.yaml')
我认为这三个选项都可以使用,但是我想知道是否要考虑任何样式或Flask特定的注意事项。
前两个选项没有太大区别,除了您现在不必分别导入配置对象。换句话说,app.config
只要您已有访问权限,就可以通过使用来访问整个Flask应用中的配置current_app
。
但是,不应使用最后一个选项,不要将属性添加到Flask对象。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句