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中的两个内置模块介绍
Apr 05 Python
用Python的Tornado框架结合memcached页面改善博客性能
Apr 24 Python
实例讲解Python中函数的调用与定义
Mar 14 Python
Python 内置函数complex详解
Oct 23 Python
django 使用 request 获取浏览器发送的参数示例代码
Jun 11 Python
Django forms组件的使用教程
Oct 08 Python
Python基础知识点 初识Python.md
May 14 Python
Apache部署Django项目图文详解
Jul 30 Python
Python中list循环遍历删除数据的正确方法
Sep 02 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
Feb 18 Python
利用Python计算KS的实例详解
Mar 03 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
Apr 13 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 动态执行带有参数的类方法
2009/04/10 PHP
php处理文件的小例子(解压缩,删除目录)
2013/02/03 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
php实现在服务器上创建目录的方法
2015/03/16 PHP
yii权限控制的方法(三种方法)
2015/12/28 PHP
PHP巧妙利用位运算实现网站权限管理的方法
2017/03/12 PHP
php操作redis常见方法示例【key与value操作】
2020/04/14 PHP
ASP中用Join和Array,可以加快字符连接速度的代码
2007/08/22 Javascript
JavaScript几种形式的树结构菜单
2010/05/10 Javascript
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
2012/10/11 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
from 表单提交返回值用post或者是get方法实现
2013/08/21 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
使用JS实现jQuery的addClass, removeClass, hasClass函数功能
2014/10/31 Javascript
javascript框架设计读书笔记之模块加载系统
2014/12/02 Javascript
js数组去重的方法汇总
2015/07/29 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
一款简单的jQuery图片标注效果附源码下载
2016/03/22 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(二)
2016/09/14 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
2016/11/25 Javascript
js 判断数据类型的几种方法
2017/01/13 Javascript
vue教程之toast弹框全局调用示例详解
2020/08/24 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
2019/04/26 Javascript
详解JS实现系统登录页的登录和验证
2019/04/29 Javascript
vue前端框架—Mint UI详解(更适用于移动端)
2019/04/30 Javascript
JavaScript学习教程之cookie与webstorage
2019/06/23 Javascript
[04:16]DOTA2英雄梦之声_第09期_斧王
2014/06/21 DOTA
深入解析Python的Tornado框架中内置的模板引擎
2016/07/11 Python
PyCharm设置护眼背景色的方法
2018/10/29 Python
详解django中url路由配置及渲染方式
2019/02/25 Python
Python字符串三种格式化输出
2020/09/17 Python
美国木工工具和用品商店:Woodcraft
2019/10/30 全球购物
药学专业学生的自我评价分享
2014/02/06 职场文书
租房协议书
2014/04/10 职场文书
库房管理员岗位职责
2015/02/12 职场文书
一文读懂go中semaphore(信号量)源码
2021/04/03 Golang