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


Posted in Python onJuly 26, 2019

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

比如:

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 相关文章推荐
400多行Python代码实现了一个FTP服务器
May 10 Python
使用python实现baidu hi自动登录的代码
Feb 10 Python
Python的另外几种语言实现
Jan 29 Python
Python数据分析之如何利用pandas查询数据示例代码
Sep 01 Python
Python paramiko模块的使用示例
Apr 11 Python
Python3匿名函数用法示例
Jul 25 Python
基于Python在MacOS上安装robotframework-ride
Dec 28 Python
Python3.5内置模块之random模块用法实例分析
Apr 26 Python
Python中查看变量的类型内存地址所占字节的大小
Jun 26 Python
给我一面国旗 python帮你实现
Sep 30 Python
Python嵌套函数,作用域与偏函数用法实例分析
Dec 26 Python
Python多线程threading join和守护线程setDeamon原理详解
Mar 18 Python
Django REST framework内置路由用法
Jul 26 #Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 #Python
Django 开发环境与生产环境的区分详解
Jul 26 #Python
python3发送邮件需要经过代理服务器的示例代码
Jul 25 #Python
如何实现Django Rest framework版本控制
Jul 25 #Python
python requests使用socks5的例子
Jul 25 #Python
python基于socket进行端口转发实现后门隐藏的示例
Jul 25 #Python
You might like
php继承中方法重载(覆盖)的应用场合
2015/02/09 PHP
php统计数组元素个数的方法
2015/07/02 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
jQuery实现的类flash菜单效果代码
2010/05/17 Javascript
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
javascript里绝对用的上的字符分割函数总结
2014/07/31 Javascript
node.js中使用socket.io制作命名空间
2014/12/15 Javascript
JavaScript中消除闭包的一般方法介绍
2015/03/16 Javascript
JS实现的网页背景闪电闪烁效果代码
2015/10/17 Javascript
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
2016/08/29 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
javascript深拷贝、浅拷贝和循环引用深入理解
2018/05/27 Javascript
微信小程序http连接访问解决方案的示例
2018/11/05 Javascript
给localStorage设置一个过期时间的方法分享
2018/11/06 Javascript
Element Carousel 走马灯的具体实现
2020/07/26 Javascript
微信小程序实现点击导航标签滚动定位到对应位置
2020/11/19 Javascript
Python的Flask框架与数据库连接的教程
2015/04/20 Python
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
python实现kNN算法
2017/12/20 Python
Python实现删除时保留特定文件夹和文件的示例
2018/04/27 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
Pythony运维入门之Socket网络编程详解
2019/04/15 Python
Python基于read(size)方法读取超大文件
2020/03/12 Python
Django Form常用功能及代码示例
2020/10/13 Python
python通过cython加密代码
2020/12/11 Python
Python制作运行进度条的实现效果(代码运行不无聊)
2021/02/24 Python
Nisbets爱尔兰:英国最大的厨房和餐饮设备供应商
2019/01/26 全球购物
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
小学语文教学反思
2014/02/10 职场文书
分家协议书
2014/04/21 职场文书
2015年个人思想总结
2015/03/09 职场文书