为什么正则表达式不能获取指定GET参数

为什么正则表达式不能获取指定GET参数

urls.py中:
re_path(r’^get?age=[1-9]’, get_param, name=‘get_param’)

views.py中
def get_param(request):
age = request.GET.get(‘age’, None)
return HttpResponse(f’GET:{age}’)

当输入 127.0.0.1:8000/get?name=3或者name等于其他任意1-9内的数字时,获取不到指定页面,这是为什么

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好!

1、获取url中使用?拼接的参数是不需要使用正则的,直接将参数拼接在url中就可以

http://img1.sycdn.imooc.com//climg/60a47bcc09d1108a08100077.jpg

http://img1.sycdn.imooc.com//climg/60a47bdb094fed8103930115.jpg

2、使用正则获取url中的参数

http://img1.sycdn.imooc.com//climg/60a47dfa09aebdca09050054.jpg

http://img1.sycdn.imooc.com//climg/60a47e090984225a05520067.jpg

http://img1.sycdn.imooc.com//climg/60a47d9b0903ddf003500118.jpg

若要使用正则限定​name的值,应使用第二种方法

祝学习愉快!

  • 饿少 提问者 #1

    我知道回复中1、2的两种方式。我的意思是获得指定参数,就是必须要在URL中使用  ?name = 1或者1-9任意一个数,才能出现指定页面;

    2021-05-19 10:58:49
  • 好帮手慕美 回复 提问者 饿少 #2

    同学,你好!若要使用?拼接的方式,同学可以在获取到name值后添加if条件判断,当满足1-9任意一个数时出现指定页面。

    祝学习愉快!

    2021-05-19 15:25:09
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师