解决python flask中config配置管理的问题

yipeiwu_com6年前Python基础

在项目中我们需要配置各种环境。如果我们的配置项很少的话,可以直接简单粗暴的来;

比如:

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设计】。

相关文章

python数据批量写入ScrolledText的优化方法

如下所示: for i in data[::-1]: self.maintenance_text.insert(tk.END, str(i['payload']) + '\n\n'...

python备份文件以及mysql数据库的脚本代码

复制代码 代码如下: #!/usr/local/python import os import time import string source=['/var/www/html/xxx...

python 判断自定义对象类型

要判断自定义对象的类型,用__class__方法,或者用isinstance(object, class-or-type-or-tuple)-->bool 用__class__不能...

python pycurl验证basic和digest认证的方法

简介 pycurl类似于Python的urllib,但是pycurl是对libcurl的封装,速度更快。 本文使用的是pycurl 7.43.0.1版本。 Apache下配置Basic认...

python实现定时自动备份文件到其他主机的实例代码

python实现定时自动备份文件到其他主机的实例代码

定时将源文件或目录使用WinRAR压缩并自动备份到本地或网络上的主机 1.确保WinRAR安装在默认路径或者把WinRAR.exe添加到环境变量中 2.在代码里的sources填写备份的...