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中用于计算指数的exp()方法
May 14 Python
Python回调函数用法实例详解
Jul 02 Python
在Django的上下文中设置变量的方法
Jul 20 Python
Django 添加静态文件的两种实现方法(必看篇)
Jul 14 Python
numpy判断数值类型、过滤出数值型数据的方法
Jun 09 Python
Python numpy.array()生成相同元素数组的示例
Nov 12 Python
Face++ API实现手势识别系统设计
Nov 21 Python
新手入门Python编程的8个实用建议
Jul 12 Python
获取Pytorch中间某一层权重或者特征的例子
Aug 17 Python
Python函数式编程指南:对生成器全面讲解
Nov 19 Python
python自动识别文本编码格式代码
Dec 26 Python
tensorflow实现将ckpt转pb文件的方法
Apr 22 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/01/12 PHP
php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)
2012/07/31 PHP
PHP输出多个元素的排列或组合的方法
2017/03/14 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
2019/03/22 PHP
基于jQuery的日期选择控件
2009/10/27 Javascript
改变javascript函数内部this指针指向的三种方法
2010/04/23 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
javascript的正则匹配方法学习
2016/02/24 Javascript
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
正则表达式(语法篇推荐)
2016/06/24 Javascript
浅谈原生JS中的延迟脚本和异步脚本
2017/07/12 Javascript
vue2.0 根据状态值进行样式的改变展示方法
2018/03/13 Javascript
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
js实现input密码框显示/隐藏功能
2020/09/10 Javascript
Nodejs libuv运行原理详解
2019/08/21 NodeJs
在vue中实现echarts随窗体变化
2020/07/27 Javascript
Vue+Vant 图片上传加显示的案例
2020/11/03 Javascript
Python重新引入被覆盖的自带function
2014/07/16 Python
开始着手第一个Django项目
2015/07/15 Python
Python selenium 三种等待方式详解(必会)
2016/09/15 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
Python中static相关知识小结
2018/01/02 Python
Python Json序列化与反序列化的示例
2018/01/31 Python
纯css3实现的竖形无限级导航
2014/12/10 HTML / CSS
使用HTML5 Canvas API中的clip()方法裁剪区域图像
2016/03/25 HTML / CSS
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
铭万公司.net面试题笔试题
2014/07/20 面试题
2013年军训通讯稿
2014/02/05 职场文书
银行竞聘演讲稿范文
2014/04/23 职场文书
社会实践先进工作者事迹材料
2014/05/06 职场文书
物理系毕业生自荐书
2014/06/13 职场文书
小学生安全责任书
2014/07/25 职场文书
课外访万家心得体会
2014/09/03 职场文书
2014年妇联工作总结
2014/11/21 职场文书
企业开业庆典答谢词
2015/01/20 职场文书
《模拟人生4》推出新补丁 “婚礼奇缘”DLC终于得到修复
2022/04/03 其他游戏