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中对象迭代与反迭代的技巧总结
Sep 17 Python
Python简单实现控制电脑的方法
Jan 22 Python
Python将多个list合并为1个list的方法
Jun 27 Python
Python判断对象是否相等及eq函数的讲解
Feb 25 Python
Python 堆叠柱状图绘制方法
Jul 29 Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
Aug 12 Python
Python学习笔记之列表推导式实例分析
Aug 13 Python
Python OrderedDict的使用案例解析
Oct 25 Python
Python常用模块sys,os,time,random功能与用法实例分析
Jan 07 Python
Python3 字典dictionary入门基础附实例
Feb 10 Python
详解tensorflow2.x版本无法调用gpu的一种解决方法
May 25 Python
pytorch 中nn.Dropout的使用说明
May 20 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生成Gif图片验证码
2013/10/27 PHP
Codeigniter+PHPExcel实现导出数据到Excel文件
2014/06/12 PHP
PHP实现利用MySQL保存session的方法
2014/08/23 PHP
ThinkPHP3.2.2的插件控制器功能
2015/03/05 PHP
Zend Framework教程之Zend_Controller_Plugin插件用法详解
2016/03/07 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
2019/05/06 PHP
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
javascript ready和load事件的区别示例介绍
2013/08/30 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
jquery实现效果比较好的table选中行颜色
2014/03/25 Javascript
js中自定义方法实现停留几秒sleep
2014/07/11 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
功能强大的Bootstrap使用手册(一)
2016/08/02 Javascript
从0开始学Vue
2016/10/27 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
JS使用Dijkstra算法求解最短路径
2019/01/17 Javascript
Python cx_freeze打包工具处理问题思路及解决办法
2016/02/13 Python
python 请求服务器的实现代码(http请求和https请求)
2018/05/25 Python
《与孩子一起学编程》python自测题
2018/05/27 Python
python中的不可变数据类型与可变数据类型详解
2018/09/16 Python
Python使用import导入本地脚本及导入模块的技巧总结
2019/08/07 Python
python中对_init_的理解及实例解析
2019/10/11 Python
python爬虫中的url下载器用法详解
2020/11/30 Python
Python+kivy BoxLayout布局示例代码详解
2020/12/28 Python
前端水印的简单实现代码示例
2020/12/02 HTML / CSS
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
Vuori官网:运动服装的终级表现
2021/01/27 全球购物
一些关于MySql加速和优化的面试题
2014/01/30 面试题
个人生活学习自我评价范文
2013/11/26 职场文书
毕业生个人投资创业计划书
2014/01/04 职场文书
2014爱耳日宣传教育活动总结
2014/03/09 职场文书
护理专业毕业生自荐书
2014/05/24 职场文书
小学五一劳动节活动总结
2015/02/09 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python