Flask--路由备忘
Posted alicelai1319
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask--路由备忘相关的知识,希望对你有一定的参考价值。
路由:
路由传参route("/index/<userid>") def index(userid),参数数据类型的指定route("user/<int:user_id>"),请求方式指定method,request.method
路由转换器:继承Baseconvertor
默认转换器-6个(default=string,any.path,int,float,uuid)
自定义转换器-定义class RegexConverter(Baseconvertor),添加到转换器列表app.convertors["re"]=RegexConverter
to_python-重新定义url参数的在视图函数中的数据类型
to_url-重定向之前保证url_for传递到url中的参数能被正确匹配
# 定义 添加 使用 class RegexConverter(BaseConverter): # regex= "[0-9]{6}" def __init__(self,url_map,*args): super().__init__(url_map) self.regex = args[0] class ListConverter(BaseConverter): def __init__(self,url_map,*args): super().__init__(url_map) def to_python(self,value): return value.split(‘,‘) # [1,2,3,4] def to_url(self, value): result = ‘,‘.join(str(v) for v in value) return result app.url_map.converters[‘re‘]=RegexConverter app.url_map.converters[‘list‘]=ListConverter @app.route("/index/<list(‘(\d+,?\d$)‘):user_id>") def index(user_id): return "Welcome to %s‘ PKM!"%user_id @app.route("/login") def to_url_test(): return redirect(url_for(‘index‘,user_id=‘[1,2,3,4]‘))
以上是关于Flask--路由备忘的主要内容,如果未能解决你的问题,请参考以下文章