flask路由正则表达式
作者:高景洋 日期:2021-06-11 06:48:20 浏览次数:538
在flask开发过程中,我们有时会需要用正则匹配路由,那我们需要怎么做呢?
直接看下边的代码
1、需要一个正则匹配类,我们将它放在 项目中的 url_helper.py 中
from werkzeug.routing import BaseConverter
class RegexConverter(BaseConverter):
"""
自定义URL匹配正则表达式
"""
def __init__(self, map, regex):
super(RegexConverter, self).__init__(map)
self.regex = regex
def to_python(self, value):
"""
路由匹配时,匹配成功后传递给视图函数中参数的值
:param value:
:return:
"""
return value
def to_url(self, value):
"""
使用url_for反向生成URL时,传递的参数经过该方法处理,返回的值用于生成URL中的参数
:param value:
:return:
"""
val = super(RegexConverter, self).to_url(value)
return val
2、将正则类注册到flask中
app = Flask(__name__)
app.url_map.converters['regex'] = RegexConverter
@app.route('/<regex("beijing|qingdao"):key>.html')
def method_test(key):
do something
本文永久性链接:
<a href="http://r4.com.cn/art192.aspx">flask路由正则表达式</a>
<a href="http://r4.com.cn/art192.aspx">flask路由正则表达式</a>
相关文章
- python3虚拟环境搭建创建安装进入激活退出
- python flask 报错uwsgi: command not found
- centos杀掉停止uwsgi后台进程
- flask路由正则表达式
- python计算时间差
- python3对list group by
- Python Flask Uwsgi 每次更新都要手动重启uwsgi,如何处理
- centos uwsgi 守护运行/背后运行/后台运行的方法
- python3 https 报错:InsecureRequestWarning: Unverified HTTPS request is being made
- python如何引用不同模块下的相同方法(函数)名