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

yipeiwu_com5年前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验证码图片处理(二值化)

python验证码图片处理(二值化)

写在最前面: 这个我打算分几次写,由于我们通过selenium拿到的图片会很模糊,所以使用Tesseract识别之前要对图片先进行处理。 第一步就是二值化,设定阈值,低于阈值全部为白色(...

python检测是文件还是目录的方法

本文实例讲述了python检测是文件还是目录的方法。分享给大家供大家参考。具体实现方法如下: import os if os.path.isdir(path): print "i...

python 基本数据类型占用内存空间大小的实例

python中基本数据类型和其他的语言占用的内存空间大小有很大差别 import sys a = 100 b = True c = 100L d = 1.1 e ="" f = []...

python3 requests中使用ip代理池随机生成ip的实例

啥也不说了,直接上代码吧! # encoding:utf-8 import requests # 导入requests模块用于访问测试自己的ip import random pro...

Python中实现的RC4算法

闲暇之时,用Python实现了一下RC4算法 编码 UTF-8 class 方式 #/usr/bin/python #coding=utf-8 import sys,os,hash...