我有一个Flask视图,它接受一个url参数<div class="container">
<p class="center"> lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme</p>
<p class="right">lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme lorem ipusme</p>
</div>
,它只能接受3个值:&#39;逗号&#39;&#39;管道&#39;和&#39;标签& #39 ;.
old_del
如果用户包含@app.route('/jobs/change-file-del/<str:file_location>/<str:old_del>')
def process_feed(file_location, old_del='tab'):
...
的无效值,我想返回错误。我可以使用old_del
语句来完成此操作,但有没有办法专门用Flask做这个?
答案 0 :(得分:4)
内置any
网址转换器。用它来指定有效值。如果它不匹配,您将获得404。
@app.route('/jobs/change/<str:name>/<any(comma, pipe, tab):delim>')
def process_feed(name, delim='tab'):
pass
如果您想进行更复杂的检查,可以改为write your own converter。