jinja2如何将变量放入jinja块中?

x9ybnkn6  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(530)

您好,我有一个html文件,代码如下:

<div class="form-group">
              <div class="input-group input-group-alternative">
                <div class="input-group-prepend">
                  <span class="input-group-text"><i class="ni ni-key-25"></i></span>
                </div>
                {{ form.abc1(placeholder="abc 1",class="form-control",type="password")}}
              </div>
            </div>
            <div class="form-group">
              <div class="input-group input-group-alternative">
                <div class="input-group-prepend">
                  <span class="input-group-text"><i class="ni ni-time-alarm"></i></span>
                </div>
                {{ form.abc2(placeholder="abc 2",class="form-control") }}
              </div>
            </div>
            <div class="form-group">
              <div class="input-group input-group-alternative">
                <div class="input-group-prepend">
                  <span class="input-group-text"><i class="ni ni-time-alarm"></i></span>
                </div>
                {{ form.abc3(placeholder="abc 3",class="form-control") }}
              </div>
            </div>

我如何使用jinja for循环做到这一点?我可以做一些类似于以下python解决方案的事情:

i = 1
while i < 3:
  exec(f"abc{i} = {i}")
  i += 1

基本上,我需要使用jinja循环在html代码中生成ABC

{% for element in abclist %}

这里可以定义以下内容:

{{ form.abc%element here%(placeholder="abc %element here%",class="form-control") }}
hc2pp10m

hc2pp10m1#

因为不能像这样在jinja中嵌套双括号{{{{}},所以最好(更干净)的解决方案是使用宏。此处显示
然后您可以使用您的循环:

{% for element in form %}
{{ render_field(element) }}

相关问题