Web框架flask---路由限制于路由参数处理

首先,什么是flask框架中的路由

as far as i am concerned,它就是用一个装饰器来说明了基础网页网址+上‘/’+其他地址的新地址的网页来干什么。

可以说,路由就是原网页基础上的一个新网页,这个新网页可能很大变化,也可能只是原网页上做一个简单的修改,比如查询,数据更新之类的。

请求方式限定(一个网页肯定有的)

我们可以设定一个网页是get还是post
比如我们看看下面的代码:

@app.route('/',methods={'GET','POST'})
def hello():
	return 'hello world'

我们指定了这个路由可以GET也可以POST
一般路由没有指定methods时,系统默认是GET

给路由传参示例

又是我们需要将同一类URL映射到同一个视图函数处理,比如:使用同一个视图函数来显示不同用户的订单信息。

@app.route('/order/<order_id>')
def get_order_id(order_id): #需要传参(填入参数)
    # 参数类型默认是一个字符串,unicode
    print (type(order_id))
    return 'order_id %s' % order_id

访问网址:/order/666(传参:666)
在这里插入图片描述
路由传递的参数默认当作string处理
我们可以看下print的结果
在这里插入图片描述

这里指定int,会调用系统的路由转换器进行匹配和转换。
==-==大致原理是将参数强转伪int,如果成功,则可以进行路由匹配
==-==如果参数无法转换成功,就无法匹配该路由

@app.route('/order/int:<order_id>')
def get_order_id(order_id): #需要传参(填入参数)
    # 参数类型默认是一个字符串,unicode
    print (type(order_id))
    return 'order_id %s' % order_id

在这里插入图片描述

可以看到我们限制参数为int后,我们传入string报错了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值