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守护进程和脚本单例运行详解
Jan 06 Python
python使用筛选法计算小于给定数字的所有素数
Mar 19 Python
Python将list中的string批量转化成int/float的方法
Jun 26 Python
python实时获取外部程序输出结果的方法
Jan 12 Python
python抖音表白程序源代码
Apr 07 Python
scikit-learn线性回归,多元回归,多项式回归的实现
Aug 29 Python
Python TCPServer 多线程多客户端通信的实现
Dec 31 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
Python内置函数locals和globals对比
Apr 28 Python
为什么说python适合写爬虫
Jun 11 Python
python中数字是否为可变类型
Jul 08 Python
Python如何实现远程方法调用
Aug 07 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学习之 数组声明
2011/06/09 PHP
PHP错误提示的关闭方法详解
2013/06/23 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
php中get_meta_tags()、CURL与user-agent用法分析
2014/12/16 PHP
php数组函数array_walk用法示例
2016/05/26 PHP
jQuery Ajax 仿AjaxPro.Utility.RegisterTypeForAjax辅助方法
2011/09/27 Javascript
瀑布流布局并自动加载实现代码
2013/03/12 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
jQuery的框架介绍
2016/05/11 Javascript
详细讲解JavaScript中的this绑定
2016/10/10 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
2018/08/24 Javascript
vue中rem的配置的方法示例
2018/08/30 Javascript
vue interceptor 使用教程实例详解
2018/09/13 Javascript
详解vuex状态管理模式
2018/11/01 Javascript
vue.draggable实现表格拖拽排序效果
2018/12/01 Javascript
layui将table转化表单显示的方法(即table.render转为表单展示)
2019/09/24 Javascript
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
使用Python中的cookielib模拟登录网站
2015/04/09 Python
Python解析nginx日志文件
2015/05/11 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
Django重置migrations文件的方法步骤
2019/05/01 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
Python调用C语言程序方法解析
2020/07/07 Python
python实现登录与注册系统
2020/11/30 Python
基于html5 canvas实现漫天飞雪效果实例
2014/09/10 HTML / CSS
美国猫狗药物和用品网站:PetCareRx
2017/01/05 全球购物
网游商务专员求职信
2013/10/15 职场文书
幼儿园数学教学反思
2014/02/02 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
个人工作总结范文2014
2014/11/07 职场文书
顶岗实习协议书
2015/01/29 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
Python一行代码实现自动发邮件功能
2021/05/30 Python