如何在 Jinja2 中选中复选框

Edm*_*ond 4 html python jinja2 flask

我正在学习 Flask 编程,不知道如何检查无线电输入,这是我正在使用的 html 模板:

<form method = "POST" action="/proxy_settings">
    <input type="radio" name="proxy_mode" value = '0'>Auto
    <br>
    <input type="radio" name="proxy_mode" value = '1'>Manual
    <br>
    <br>
    <section>
        <table border="1">
            <tr>
                <td>Description</td>
                <td>delay</td>
                <td>select</td>
            </tr>
            {% for node_name, node_delay in node_list.items() %}
            <tr>
                <td>{{node_name}}</td>
                <td>{{node_delay}}</td>
                <td><input type="radio" name="proxy_node"></td>
            </tr>
            {% endfor %}
        </table>
    </section>
    <br>
    <section>
        <button type="submit">CONFIRM</button>
    </section>
</form>
Run Code Online (Sandbox Code Playgroud)

我在烧瓶中渲染这个模板,如下所示:

return render_template("base.html", node_number = ret["node_number"], proxy_mode = ret1["proxy_mode"], proxy_node = ret2["proxy_node"], node_list=ret3) 
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 如何根据变量 proxy_mode 的值检查 proxy_mode 无线电输入?
  2. 如何根据变量proxy_node的值检查proxy_node无线电输入?例如,如果 proxy_node 等于 2,则将检查表第 2 行中的单选输入。
  3. 如何动态地将 value 属性分配给无线电输入 proxy_node?

对于问题1,我尝试了以下方法,但不起作用。

<input type="radio" name="proxy_mode" value = '0' {% if proxy_mode == 0 %} checked=true {% endif %}>Auto
<br>
<input type="radio" name="proxy_mode" value = '1' {% if proxy_mode == 1 %} checked=true {% endif %}>Manual
Run Code Online (Sandbox Code Playgroud)

提前致谢!

nor*_*ree 6

这应该是最简单的方法。

<input type="radio" name="proxy_mode" value="0" {{ "checked" if proxy_mode == 0 }}>Auto
<br>
<input type="radio" name="proxy_mode" value="1" {{ "checked" if proxy_mode == 1 }}>Manual
Run Code Online (Sandbox Code Playgroud)