繁体   English   中英

使用Flask / Python从URL捕获多个值

[英]Capture more than one value from URL with Flask/Python

我想根据HTML中单击的按钮将值传递给我的Python脚本。 如果只有一个值,我可以这样做:

@app.route('/', defaults={'category': ''})
@app.route('/<category>')
def index(category):

但是总共我要捕获3个值,我不知道该怎么做。 所有这些值都是可选的。 一个(排序方法)设置了默认值,而其他两个则没有默认设置。

如何在单个函数和3个变量内完成这项工作? 谢谢。

您可以使用request.args作为查询字符串参数,这是可选的:

@app.route('/')
def index():
    category = request.args.get('category', '')
    attr1 = request.args.get('attr1')
    attr2 = request.args.get('attr2')

request.args是字典(更确切地说是MultiDict)。

请求看起来像这样

/?category=my_category&attr1=some_value&attr2=some_value

/?attr1=some_value

/

您可以在路由/功能中设置多个变量:

@app.route('/', defaults={'category': '', 'var2': '', 'var3': ''})
@app.route('/<category>/<var2>/<var3>')
def index(category, var2, var3):

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM