繁体   English   中英

如何让 Flask 应用程序与 HTML 选项交互

[英]How to get Flask app to interact with HTML options

我有以下变量: sentence_count = 2

以及以下 HTML 模板:

<div class="form-group">
          <h3>Length of summary (sentences):</h3>
          <select name="length">
            <option value="one">1</option>
            <option value="two">2</option>
            <option value="three">3</option>

          </select>
        </div>

这是我的主要 flask 路线:

@app.route("/sum", methods=['POST'])
def sum():
    if request.method == 'POST':
        select = request.form.get('articles')
        if select == "Guardian":
            return redirect(url_for("guardian"))

        if select == "NYT":
            return redirect(url_for("nyt"))

我已经在使用两个不同的 select forms,但我不确定如何将变量链接到模板。 Ie so that when the option '3' is selected, the variable would change. 这样做的正确 Jinja2 方法是什么?

<div class="form-group">
  <h3>Length of summary (sentences):</h3>
  <select name="length">
    <option value="two">1</option>
    <option value="two">2</option>
    <option value="two">3</option>

  </select>
</div>

如果您提交此页面,您可以通过request.args.get('length')从 flask 中获取所选值。 您必须使用长度关键字,因为这是您为 select 标签指定的名称。 而且你不会得到数字,例如,如果你 select 3,你不能直接得到数字 3。 相反,它将返回选项值属性。 所以你必须像这样改变 HTML。

<div class="form-group">
  <h3>Length of summary (sentences):</h3>
  <select name="length">
    <option value="one">1</option>
    <option value="two">2</option>
    <option value="three">3</option>

  </select>
</div>

暂无
暂无

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

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