解决python flask中config配置管理的问题
在项目中我们需要配置各种环境。如果我们的配置项很少的话,可以直接简单粗暴的来;
比如:
app =Flask(__name__) app.config['DEBUG']=True
app.config其实是实例化了flask.config.Config类的实例,
继承于python内置数据结构dict字典,可以使用update方法:
app.config.update( DEBUG=true, SECRET_KEY='xxxx' )
如果设置很多的情况下,想要集中起来管理设置项,
应该将他们存放在一个文件里面。
app.config支持很多的配置方式。
比如现在我们有叫settings.py的配置文件,里面的内容是
sss=yy
我们可以有三种方式加载。
1)使用配置文件进行加载
app.config.from_object('settings.py')#使用模块的名字 #也可以在引用之后直接传入对象 import settings app.config.from_object(settings)
2)使用文件名字加载。直接传入名字就行了
别的后缀的也可以,不局限于.py的
app.config.from_pyfile('settings.py',silent=True) #默认当配置文件不存在的时候抛出异常, #使用silent=True的时候只是会返回False,但是不抛出异常
3)使用环境变量加载。这种方法依然支持silent参数,获得路径后其实
还是使用from_pyfile的方式加载的。
$ export YOURAPPLICATION_SETTINGS='settings.py' app.config.from_envvar('YOURAPPLICATION_SETTINGS')
以上这篇解决python flask中config配置管理的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。