Flask框架配置与调试操作示例


Posted in Python onJuly 23, 2018

本文实例讲述了Flask框架配置与调试操作。分享给大家供大家参考,具体如下:

配置管理

复杂的项目需要配置各种环境。如果设置项很少,可以直接硬编码进来,比如下面的方式:

app = Flask(__name__)
app.config['DEBUG'] = True

app.configflask.config.Config类的实例,继承自Python内置数据结构dict,所以可以使用update方法:

app.config.update(
  DEBUG = True,
  ...
)

app.config内置的全部配置变量可以参看Builtin Configuration Values。如果设置选项很多,想要集中管理设置项,应该将他们存放到一个文件里面。app.config支持多种更新配置的方式。假设现在有个叫做settings.py的配置文件,其中的内容如下:

A = 1

可以选择如下三种方式加载:

通过配置文件加载

# 通过模块名的字符串
app.config.from_object('settings')

或者:

import settings
app.config.from_object(settings)

通过文件名字加载。但是不限于只使用.py后缀的文件名

# slient=True该文件不存在时不抛异常,返回False,默认是会抛出异常
app.config.from_pyfile('settings.py',slient=True)

调试模式

虽然app.run()这样的方式适用于启动本地的开发服务器,但是每次修改代码后都要手动重启的话,既不方便也不够优雅。如果启用了调试模式,服务器会在代码修改后自动重新载入,并在发生错误时提供一个能获得错误上下文及可执行代码的调试页面。

有两种途径来启动调试模式:

直接在应用对象上设置:

app.debug = True
app.run()

作为run的参数传入:

app.run(debug=True)

需要注意,开启调试模式会成为一个巨大的安全隐患,因此他绝对不能用于生产环境中。

希望本文所述对大家基于Flask框架的Python程序设计有所帮助。

Python 相关文章推荐
用python实现的可以拷贝或剪切一个文件列表中的所有文件
Apr 30 Python
使用Python编写简单网络爬虫抓取视频下载资源
Nov 04 Python
Python本地与全局命名空间用法实例
Jun 16 Python
Windows下Python的Django框架环境部署及应用编写入门
Mar 10 Python
Python正则表达式和元字符详解
Nov 29 Python
Python 抓取微信公众号账号信息的方法
Jun 14 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
Nov 20 Python
Python Numpy 自然数填充数组的实现
Nov 28 Python
Python如何实现爬取B站视频
May 20 Python
Django 解决distinct无法去除重复数据的问题
May 20 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
Jan 29 Python
python实现时间o(1)的最小栈的实例代码
Jul 23 #Python
Flask框架Flask-Principal基本用法实例分析
Jul 23 #Python
Flask框架Flask-Login用法分析
Jul 23 #Python
Django中的文件的上传的几种方式
Jul 23 #Python
flask中的wtforms使用方法
Jul 21 #Python
详解flask表单提交的两种方式
Jul 21 #Python
python实现周期方波信号频谱图
Jul 21 #Python
You might like
php调用dll的实例操作动画与代码分享
2012/08/14 PHP
ThinkPHP连接数据库及主从数据库的设置教程
2014/08/22 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
Javascript的&&和||的另类用法
2014/07/23 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
2种jQuery 实现刮刮卡效果
2015/02/01 Javascript
更高效的使用JQuery 这里总结了8个小技巧
2016/04/13 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
JS闭包用法实例分析
2017/03/27 Javascript
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
2017/05/20 jQuery
基于JavaScript实现弹幕特效
2020/08/27 Javascript
基于js原生和ajax的get和post方法以及jsonp的原生写法实例
2017/10/16 Javascript
解决layui laydate 时间控件一闪而过的问题
2019/09/28 Javascript
微信小程序swiper左右扩展各显示一半代码实例
2019/12/05 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
2020/08/11 Javascript
[01:10:49]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
Python字典操作简明总结
2015/04/13 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
用tensorflow构建线性回归模型的示例代码
2018/03/05 Python
python科学计算之scipy——optimize用法
2019/11/25 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
2021/01/12 Python
html5响应式开发自动计算fontSize的方法
2020/01/13 HTML / CSS
欧洲领先的电子和电信零售商和服务提供商:Currys PC World Business
2017/12/05 全球购物
歌唱比赛获奖感言
2014/01/21 职场文书
爱国主义影片观后感
2015/06/18 职场文书
《岳阳楼记》原文、译文赏析
2019/09/10 职场文书
导游词之烟台威海蓬莱
2019/11/14 职场文书
Python基础之tkinter图形化界面学习
2021/04/29 Python
使用python向MongoDB插入时间字段的操作
2021/05/18 Python
mysql聚集索引、辅助索引、覆盖索引、联合索引的使用
2022/02/12 MySQL
MySQL视图概念以及相关应用
2022/04/19 MySQL