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。。。。
【完】
浙公网安备 33010602011771号