1. 指定路由的访问方式
@app.route('/',methods=['GET','POST'])
2. url路由对应
1. 一个页面,多个url @app.route('/h2') @app.route('/h1') def h1(): return 'hello1' 2. 利用cname,反推到另一个页面(url_for) @app.route('/login') def login(): url = url_for('index') return redirect(url)
3. 转换器路由
# 利用转换器(正则)表示的url int 转换整数 float 转换浮点数 @app.route('/<int:name1>') @app.route('/<float:name1>') @app.route('/<name1>') # 不加规则,默认是字符串。 例子int类型 @app.route('/<int:name1>') def re(name1): return 'in the page %s' % name1
4. 自定义转换器(正则url)
from werkzeug.routing import BaseConverter # 第一步:定义转换器 class RegexConverter(BaseConverter): def __init__(self, url_map, regex): super().__init__(url_map) self.regex = regex # 第二步:把转换器引入到url_map.converters中,并命名为new_re,(其实就是在url_map.converters字典中添加new_re,值是定义的定义器) app.url_map.converters['new_re'] = RegexConverter # 第三步:引用new_re这个转换器 @app.route('/send/<new_re(r"1[34578]\d{9}"):mobile>') def re(mobile): return 'send sms to %s' % mobile
5。。。。
【完】