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通过DOM和SAX方式解析XML的应用实例分享
Nov 16 Python
常见的python正则用法实例讲解
Jun 21 Python
利用selenium 3.7和python3添加cookie模拟登陆的实现
Nov 20 Python
python3.4实现邮件发送功能
May 28 Python
Python实现的从右到左字符串替换方法示例
Jul 06 Python
Python实现的读取文件内容并写入其他文件操作示例
Apr 09 Python
python里 super类的工作原理详解
Jun 19 Python
Ubuntu16.04安装python3.6.5步骤详解
Jan 10 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
Apr 27 Python
Python中如何引入第三方模块
May 27 Python
Python批量删除mysql中千万级大量数据的脚本分享
Dec 03 Python
教你如何用Python实现人脸识别(含源代码)
Jun 23 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中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
2011/03/23 PHP
用PHP书写安全的脚本代码
2012/02/05 PHP
memcache命令启动参数中文解释
2014/01/13 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
js资料prototype 属性
2007/03/13 Javascript
js数字输入框(包括最大值最小值限制和四舍五入)
2009/11/24 Javascript
修改js Calendar日历控件 兼容IE9/谷歌/火狐
2013/01/04 Javascript
Javascript中判断变量是数组还是对象(array还是object)
2013/08/14 Javascript
JS遍历Json字符串中键值对先转成JSON对象再遍历
2014/08/15 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
jQuery简单实现两级下拉菜单效果代码
2015/09/15 Javascript
jQuery多条件筛选如何实现
2015/11/04 Javascript
通过设置CSS中的position属性来固定层的位置
2015/12/14 Javascript
Vue添加请求拦截器及vue-resource 拦截器使用
2017/11/23 Javascript
JS内部事件机制之单线程原理
2018/07/02 Javascript
React Native中Mobx的使用方法详解
2018/12/04 Javascript
Vue源码中要const _toStr = Object.prototype.toString的原因分析
2018/12/09 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
Python MySQL数据库连接池组件pymysqlpool详解
2017/07/07 Python
基于python 爬虫爬到含空格的url的处理方法
2018/05/11 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
Python timeit模块的使用实践
2020/01/13 Python
pytorch常见的Tensor类型详解
2020/01/15 Python
来自世界上最好大学的在线课程:edX
2018/10/16 全球购物
凯普林包包西班牙官网:Kipling西班牙
2019/04/12 全球购物
物业招聘计划书
2014/01/10 职场文书
加拿大留学自荐信
2014/01/28 职场文书
教导主任竞聘演讲稿
2014/05/16 职场文书
学校先进集体事迹材料
2014/05/31 职场文书
世博会口号
2014/06/20 职场文书
民政局离婚协议书范本
2014/10/20 职场文书
2015年班组建设工作总结
2015/05/13 职场文书