路由
2020-01-22 本文已影响0人
suenism
基本带参路由
@app.route('/show/<name>')
def show1(name):
#在函数中name表示的就是地址栏上传递过来的数据
return ‘xxxx’
指定参数类型的路由
@app.route('/show3/<name>/<int:age>')
def show3(name, age):
pass
#<int:age>:表示age参数是一个
Flask中所支持的类型转换器:
缺省: 字符串类型,但不能有/斜杠
int: 整形
float: 浮点
多URL的路由匹配
允许在一个视图函数中设置多个url的路由规则
@app.route('/')
@app.route('/index')
def index():
pass
路由中设置HTTP请求方法
Flask路由规则也允许设置对应的请求方法,只有将配置上请求方法的路径交给视图函数处理执行
@app.route('/post',methods=['GET','POST'] )
#限定了访问的请求方式,只有get和post能访问
URL反向解析
正向解析:程序自动解析,根据@app.route()中的访问路径来匹配处理函数
反向解析:通过视图处理函数的名称自动生成视图处理函数的访问路径
Flask中提供了url_for()函数:用于反向解析url,
第一个参数:指向函数名(通过@app.route()修饰的函数名称),后续的参数:对应要构建的url上的变量
@app.route('/'):
def index():
pass
@app.route('/show/<name>')
def show(name):
return "name:%s" % name
url_for('index'):#结果为 /
url_for('show',name='xxx')#结果为:/show/zsf