路由

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
上一篇 下一篇

猜你喜欢

热点阅读