1

我尝试在以下示例中使用 bootstrap-select ,但是在 Flask 中我只得到一个值而不是最大的两个值?

<form class="form-horizontal" action="{{url_for('compare')}}" method="get" role="form">
  <div class="input-group"> 
<span class="input-group-addon">Tests:</span>
  <select name='tests' class="selectpicker show-menu-arrow form-control" multiple data-max-options="2" data-live-search="true">
      <option value="Test1">Test1</option>
      <option value="Test2">Test2</option>
      <option value="Test3">Test3</option>
  </select>
  <span class="input-group-btn">
    <button class="btn btn-default" type="submit">Search!</button>
  </span>
</div>
</form>
<hr>

Flask 中的路由定义如下:

@app.route("/compare/", methods=["GET"])
@templated('compare.tmpl')
def compare():
   tests = request.args.get('tests')

如何在烧瓶中获得最多两个选定的值,例如 Test1 和 Test2?

4

1 回答 1

1

request.args是一个MultiDict。它提供了一个名为的方法,该方法getlist将返回给定键的项目列表,而不是单个值。将您的代码更新为以下内容。

tests = request.args.getlist('tests')

更多信息可以在werkzeug文档中找到。

于 2014-09-29T01:46:33.590 回答