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笔记(1) 关于我们应不应该继续学习python
Oct 24 Python
Python发送以整个文件夹的内容为附件的邮件的教程
May 06 Python
深入理解Python爬虫代理池服务
Feb 28 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
WxPython建立批量录入框窗口
Feb 27 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
May 28 Python
pyqt实现.ui文件批量转换为对应.py文件脚本
Jun 19 Python
关于初始种子自动选取的区域生长实例(python+opencv)
Jan 16 Python
Python网页解析器使用实例详解
May 30 Python
QML实现钟表效果
Jun 02 Python
Python如何对XML 解析
Jun 28 Python
Scrapy-Redis之RedisSpider与RedisCrawlSpider详解
Nov 18 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
我的群发邮件程序
2006/10/09 PHP
PHP下获取上个月、下个月、本月的日期(strtotime,date)
2014/02/02 PHP
php跨域cookie共享使用方法
2014/02/20 PHP
PHPExcel简单读取excel文件示例
2016/05/26 PHP
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
javascript 弹出窗口中是否显示地址栏的实现代码
2011/04/14 Javascript
JavaScript实现存储HTML字符串示例
2014/04/21 Javascript
JavaScript实现随机替换图片的方法
2015/04/16 Javascript
详解Angular中$cacheFactory缓存的使用
2016/08/19 Javascript
js通过classname来获取元素的方法
2016/11/24 Javascript
Node.js pipe实现源码解析
2017/08/12 Javascript
JavaScript 五大常见函数
2018/03/23 Javascript
详解vue移动端项目的适配(以mint-ui为例)
2018/08/17 Javascript
javascript实现简单页面倒计时
2021/03/02 Javascript
[01:02:34]TFT vs VGJ.T Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
[45:25]完美世界DOTA2联赛循环赛 PXG vs IO 第一场 11.06
2020/11/09 DOTA
Python3 queue队列模块详细介绍
2018/01/05 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
pygame游戏之旅 创建游戏窗口界面
2018/11/20 Python
python 并发编程 阻塞IO模型原理解析
2019/08/20 Python
Python数据持久化存储实现方法分析
2019/12/21 Python
Window系统下Python如何安装OpenCV库
2020/03/05 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
2020/03/23 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
python爬虫---requests库的用法详解
2020/09/28 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
HTML5 CSS3新的WEB标准和浏览器支持
2009/07/16 HTML / CSS
英国卫浴商店:Ergonomic Design
2019/09/22 全球购物
如何在Cookie里面保存Unicode和国际化字符
2013/05/25 面试题
大学生应聘求职信
2014/05/26 职场文书
企业总经理任命书
2014/06/05 职场文书
农村环境卫生倡议书
2015/04/29 职场文书
信用卡工作证明范本
2015/06/19 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
使用pipenv管理python虚拟环境的全过程
2021/09/25 Python