flask系列二之基础知识
一、调试模式(debug模式)
1、设置debug模式
在app.run()中传入关键字参数debug,app.run(debug=Ture),就设置当前项目为debug模式。如下所示:
# 从flask框架中导入Flask类
from flask import Flask # 传入__name__初始化一个Flask实例
app = Flask(__name__) # app.route装饰器映射URL和执行的函数。这个设置将根URL映射到了hello_world函数上
@app.route('/')
def hello_world():
return 'Hello World!' # 运行本项目
if __name__ == '__main__':
app.run(debug=True)
2、debug模式的两大功能
(1)当程序出现问题的时候,可以在网页中看到具体的错误信息。如果没有设置debug模式,出现错误时在网页上只是出现“内部服务器错误”的信息。
(2)当你的程序已经部署成功,这时你修改你的程序代码,在debug模式下程序会检测到代码的改变并且会自动重新加载(有种热部署的感觉),就不需要手动重启了。
二、巧用配置文件来配置参数config.py
1、 新建一个config.py文件
比如之前的那种配置Debug模式的方法可以通过config文件来配置的。
config.py中:
DEBUG = True # 改成False就可以关闭DEBUG模式
2、在主app文件中导入这个文件,并且配置到app中,示例代码如下: (app.config.from_object(config))
# 从flask框架中导入Flask类
from flask import Flask # 传入__name__初始化一个Flask实例
app = Flask(__name__)
app.config.from_object(config) # 这样也可以配置成DEBUG模式 # app.route装饰器映射URL和执行的函数。这个设置将根URL映射到了hello_world函数上
@app.route('/')
def hello_world():
return 'Hello World!' # 运行本项目
if __name__ == '__main__':
app.run(debug=True)
3、还有许多的其他参数,都是放在这个配置文件中,比如连接数据库相关的参数
三、URL传参数
- 参数的作用:可以在相同的URL,但是指定不同的参数,来加载不同的数据。
- 在flask中如何使用参数
@app.route('/article/<id>')
def article(id):
return '你请求的参数是:%s' % id(1)参数需要放在两个尖括号中 (2)视图函数中需要放和url中的参数同名的参数。四、URL反转
四、URL反转
反转的意义在于通过视图名称可以获得与之对应的url
使用方式为
(1)从flask导入url_for
from flask import url_for
(2)在url_for中传入视图名称
url_for('page_name_view')
五、页面跳转(redirect)和重定向
- 用处:在用户访问一些需要登录的页面的时候,如果用户没有登录,那么可以让她重定向到登录页面。
- 代码实现:
from flask import Flask,redirect,url_for
redirect(url_for('login'))
flask系列二之基础知识的更多相关文章
- Mina 系列(二)之基础
Mina 系列(二)之基础 Mina 使用起来多么简洁方便呀,就是不具备 Java NIO 的基础,只要了解 Mina 常用的 API,就可以灵活使用并完成应用开发. 1. Mina 概述 首先,看 ...
- Spring Ioc源码分析系列--Ioc的基础知识准备
Spring Ioc源码分析系列--Ioc的基础知识准备 本系列文章代码基于Spring Framework 5.2.x Ioc的概念 在Spring里,Ioc的定义为The IoC Containe ...
- ERP-非财务人员的财务培训教(一.二)------财务基础知识
二.基本财务管理知识 第一节 财务管理基础知识(一) 财务与会计的关系 会计的基础知识 (一) 财务与会计的关系 财务与会计的内涵 1.会计 会计工作主要是解决三个环节的问题: 会计凭证 会计账簿 会 ...
- VBS学习日记(二) 基础知识
VBScript 基础知识 一.变量 1.全部单引號后面的内容都被解释为凝视.(在vbsedit中ctrl+m凝视,反凝视ctrl+shift+m) 2.在 VBScript 中,变量的命名规则遵循标 ...
- [Windows驱动开发](二)基础知识——数据结构
本节主要介绍驱动开发的一些基础知识. 1. 驱动程序的基本组成 1.1. 最经常见到的数据结构 a. DRIVER_OBJECT驱动对象 // WDK中对驱动对象的定义 // 每个驱动程序都会有一个唯 ...
- 【Linux系列】Linux基础知识整理
Linux操作系统在服务器领域广泛的使用到,作为一个后台开发工程师很有必要了解Linux相关的知识. 本篇日志是我学习Linux过程中的简单记录和总结.本着"理论够用,实践为主"的 ...
- Java 8实战之读书笔记二:基础知识
好记性不如烂笔头,整理一些个人觉得比较重要的东西. 一.基础知识 第1章 为什么要关心Java 8 Java 8提供了一个新的API(称为"流", Stream),它支持许多处理数 ...
- Python学习系列(二)(基础知识)
Python基础语法 Python学习系列(一)(基础入门) 对于任何一门语言的学习,学语法是最枯燥无味的,但又不得不学,基础概念较繁琐,本文将不多涉及概念解释,用例子进行相关解析,适当与C语言对比, ...
- Flask系列(二)Flask基础
知识点回顾 1.flask依赖wsgi,实现wsgi的模块:wsgiref(django),werkzeug(flask),uwsgi(上线) 2.实例化Flask对象,里面是有参数的 app = F ...
随机推荐
- 20165210 2017-2018-2《Java程序设计》课程总结
20165210 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总: 预备作业一: 20165210 我期望的师生关系 预备作业二:20165210 学习基础和C语言基 ...
- Photoshop脚本指南——Hello World
作为一个程序猿,每一个东西的学习都是从Hello World开始的,从今天开始,让我们一起进入Photoshop脚本的世界,并以Hello World开始我们的旅程. 1.简介 Photoshop支持 ...
- PhotoShop脚本指南
Photoshop脚本语言 Photoshop支持三种脚本语言:AppleScript,VBScript,JavaScript.其中AppleScript为苹果系统,VBScript为Windows操 ...
- 【MFC】SetWindowPos函数使用详解
摘自: http://wenku.baidu.com/link?url=hYKs20rYA13TTdMl9gJ378GNOsxH1DPZPkYZVEIcipATlVBMLzjWdpd2-29fm-tq ...
- MyBatis对多关系:显示该用户的所有角色
只要在一边的UserMapper.xml 配置好就可以了 <?xml version="1.0" encoding="UTF-8" ?> <! ...
- 深入理解java虚拟机-第三章
1.概述 2.对象已死吗? 引用计数器 给对象添加一个引用计数器,每当有引用时,计数器加1,引用失效时,计数器减1:任何时刻计数器为0的对象就是不可能再被使用的. 若对象是循环引用,则无法处理.JVM ...
- 【JavsScript高级程序设计】学习笔记[1]
1. 在HTML中使用javascript 在使用script嵌入脚本时,脚本内容不能包含'</script>'字符串(会被认为是结束的标志).可以通过转义字符解决('\') 默认scri ...
- C++将链表反转的实现
有题目的需求是求将链表反转,例如1->2->3->4->5转变成5->4->3->2->1,经典的是可以有两种解决方法,递归方式和非递归方式,下面给出C ...
- 剑指offer-第六章面试中的各项能力(n个骰子的点数)
题目:把n个骰子扔到地上,骰子之和为S,输入n,打印s所有可能的值出现的概率. 思路:由于骰子的点数为1~6,因此n个骰子之和的大小为n~6n之间.故可以定义一个数组来存放这6n-n+1个数出现的次数 ...
- 记一次RESTful调试过程
1. 为什么前台怎么调用后台,都是跳到页面不存在. 因为已经改为RESTful,保存按钮的type还是submit: 2. 改成buttong之后,设置onclick="update()“, ...