一、route()路由概述
功能:将URL绑定到函数
路由函数route()的调用有两种方式:静态路由和动态路由
二、静态路由和动态路径
方式1:静态路由
@app.route(“/xxx”) xxx为静态路径 如::/index / /base等,可以返回一个值、字符串、页面等
from flask import Flask
app = Flask(__name__)
@app.route('/hello')
def hello_world():
return 'Hello World!!!'
@app.route('/pro')
def index():
return render_template('login.html')
if __name__ == '__main__':
app.run(debug = True)
方式2:动态路由
采用<>进行动态url的传递
@app.route(“/”),这里xxx为不确定的路径。
from flask import Flask
app = Flask(__name__)
@app.route('/hello/<name>')
def hello_name(name):
return 'Hello %s!' % name
if __name__ == '__main__':
app.run(debug = True)
如果浏览器地址栏输入:http:// localhost:5000/hello/w3cschool 则会在页面显示:Hello w3cschool!
三、route()其它参数
1.methods=[‘GET’,‘POST’]
- 当前视图函数支持的请求方式,不设置默认为GET
- 请求方式不区分大小写
methods=[‘GET’] 支持的请求方法为GET methods=[‘POST’] 支持的请求方法为POST methods=[‘GET’,‘POST’] 支持的请求方法为POST GET
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'GET':
return render_template('login.html')
elif request.method == 'POST':
username = request.form.get('username')
pwd = request.form.get('pwd')
if username == 'yang' and pwd == '123456':
session['username'] = username
return 'login successed 200 ok!'
else:
return 'login failed!!!'
|