小编Dav*_*iro的帖子

Flask - 具有多个可选参数的路由

我有一个名为 search 的路由:@app.route('/search') 是否可以向其中添加多个可选参数?例子:

@app.route('/search/pg/<int:pg>')
@app.route('/search/types/<types>')
@app.route('/search/number/<int:number>')
@app.route('/search/subject/<subject>')
Run Code Online (Sandbox Code Playgroud)

URL 中的顺序不重要,所以我可以调用 /search/pg/2 或 /search/subject/MySubject/pg/2 或 /search/types/posts/subject/MySubject/pg/2

我试过了,但它只适用于完整路径和所有参数:

@app.route('/search/pg/<int:pg>/types/<types>/subject/<subject>', methods=['GET', 'POST'])
@app.route('/search/subject', defaults={'subject', None})
@app.route('/search/pg/<int:pg>/types/<types>', methods=['GET', 'POST'])
@app.route('/search/types', defaults={'types', None})
@app.route('/search', defaults={'pg': 1}, methods=['GET', 'POST'])
@app.route('/search/pg/<int:pg>', methods=['GET', 'POST'])
def search(pg, types=None, subject=None):
    pass
Run Code Online (Sandbox Code Playgroud)

python routes flask

1
推荐指数
1
解决办法
8152
查看次数

标签 统计

flask ×1

python ×1

routes ×1