解决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 相关文章推荐
Python3指定路径寻找符合匹配模式文件
May 22 Python
Python 爬虫的工具列表大全
Jan 31 Python
Python中的探索性数据分析(功能式)
Dec 22 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
Jan 24 Python
对python实现合并两个排序链表的方法详解
Jan 23 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
PyQt5实现简易电子词典
Jun 25 Python
python发qq消息轰炸虐狗好友思路详解(完整代码)
Feb 15 Python
python 实现分组求和与分组累加求和代码
May 18 Python
浅谈tensorflow使用张量时的一些注意点tf.concat,tf.reshape,tf.stack
Jun 23 Python
容易被忽略的Python内置类型
Sep 03 Python
Pycharm配置autopep8实现流程解析
Nov 28 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
Zend Studio 无法启动的问题解决方法
2008/12/04 PHP
完善CodeIgniter在IDE中代码提示功能的方法
2014/07/19 PHP
PHP制作图形验证码代码分享
2014/10/23 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
PHP等比例压缩图片的实例代码
2018/07/26 PHP
php使用QueryList轻松采集js动态渲染页面方法
2018/09/11 PHP
javascript下过滤数组重复值的代码
2007/09/10 Javascript
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
Jquery判断IE6等浏览器的代码
2011/04/05 Javascript
js history对象简单实现返回和前进
2013/10/30 Javascript
JavaScript调用客户端Java程序的方法
2015/07/27 Javascript
AngularJs 动态加载模块和依赖
2016/09/15 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
ES6解构赋值的功能与用途实例分析
2017/10/31 Javascript
TypeScript基础入门教程之三重斜线指令详解
2018/10/22 Javascript
如何使用three.js 制作一个三维的推箱子游戏
2020/07/29 Javascript
[03:01]DOTA2英雄基础教程 露娜
2014/01/07 DOTA
Python 解析XML文件
2009/04/15 Python
python实现一次创建多级目录的方法
2015/05/15 Python
python3.0 模拟用户登录,三次错误锁定的实例
2017/11/02 Python
1分钟快速生成用于网页内容提取的xslt
2018/02/23 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
Python通过调用有道翻译api实现翻译功能示例
2018/07/19 Python
Python处理时间日期坐标轴过程详解
2019/06/25 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
HTML5 Canvas——用路径描画线条实例介绍
2013/06/09 HTML / CSS
英智兴达软件测试笔试题
2016/10/12 面试题
中学生爱国演讲稿
2013/12/31 职场文书
模范家庭事迹材料
2014/02/10 职场文书
后备干部考察材料
2014/02/12 职场文书
市场营销调查计划书
2014/05/02 职场文书
群众路线专项整治工作情况报告
2014/10/28 职场文书
大学学生会辞职信
2015/05/13 职场文书
python 如何用map()函数创建多线程任务
2021/04/07 Python
关于flex 上下文中自动 margin的问题(完整例子)
2021/05/20 HTML / CSS
ant design vue的form表单取值方法
2022/06/01 Vue.js