flask动态url规则


动态URL规则

URL规则可以添加变量部分,也就是件更符合同规则的URL抽象成一个URL模式。

@app.route('/item/<id>')
def item(id):
    return 'Item: {}'.format(id)

 尖括号中的内容是动态的,范式匹配了/item前缀的URL都会被映射到这个路由上,在内部把id作为参数获得

使用特殊字段标记<variable_name>,默认类型是字符串,如果需要执行参数累心更需要标记成<converter:variable_name>这样的格式,converter有下面几种:

  • string :接受任何没有斜杠"/"的文本  默认
  • int 接受整数
  • float 接受浮点数
  • path 和默认相似 但是也接受斜杠
  • uuid 只接受uuid字符串
  • any 可以指定多种路径 但是需要传入参数

      @app.route('/<any(a,b):page_name>')

访问/a/和/b/都符合这个规则,/a/对应的page_name就是a

如果我们不希望定制路径,我们还是可以通过传递参数的方式 比如 /pople/?name=a./pople/?name=b 这样我们就可以通过 name=request.args.get('name') 获得传入的name值

如果我们使用post方式请求,表单参数需要通过 request.form.get('name').

自定义URL转换器

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM