在包含许多字段的表单中间添加自定义HTML的最佳方法是什么?

时间:2018-02-09 16:22:27

标签: django

我有一个包含40多个字段的模型和一个用于与之交互的ModelForm。在我的模板中,我正在做

{% for field in form %}
    <div class="fieldWrapper">
        {{ field.errors }}
        {{ field.label }} {{ field }}
    </div>
{% endfor %}

我想自定义最终的HTML - 在一些字段之后插入分隔符,一个接一个的div等等。最好的方法是什么?我想到了两种方式,我想知道我是否错过了更优雅的东西:

  1. 显而易见的 - 不是迭代表单中的字段,而是手动将所有字段和我想要的HTML放在它们之间。缺点是,这会复制列出模型中所有字段的工作,如果我更改了我想要的字段集,则需要手动调整。
  2. 做这样的事情:

    for field in form
       render field
       if field.name in fields_i_want_to_put_a_br_after
           <br>
       if field.name in fields_i_want_to_put_a_div_after
           <div>
    

0 个答案:

没有答案