request简介
- request对象是一个request子类.
- 对象访问属性, 也可以调用方法
传递模板
- rend_template : 渲染模板
app.py
from flask import Flask, render_template
import settings
app = Flask(__name__)
app.config.from_object(settings)
@app.route('/register')
def register():
return render_template('register.html')
if __name__ == '__main__':
app.run()
register.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
div{
width: 100%;
height: 100px;
border: 2px solid red;
}
</style>
</head>
<body>
<div>
<form action="" method="get">
<p><input type="text" placeholder="请输入用户名"></p>
<p><input type="text" placeholder="请输入地址"></p>
<p><input type="submit" value="提交"></p>
</form>
</div>
</body>
</html>
url规则表
- app.url_map
Map([<Rule '/register' (GET, OPTIONS, HEAD) -> register>,
<Rule '/static/<filename>' (GET, OPTIONS, HEAD) -> static>])
模板执行流程
- 根据路由规则表找到匹配的函数
- 执行函数
- 模板引擎, 找到模板文件夹中的register.html
- 转成字符串形式
- 通过视图函数的return将字符串返回
获取用户提交的数据 (get)
- get提交的数据, 在地址栏会显示
/register2?username=aaa&address=aa
- 使用
request.args.get()
方法获取get提交的数据request.args.get('username')
添加methods使支持post方法
@app.route('/register2', methods=['GET', 'POST'])