2013-03-07 96 views
2

我正在使用表单并且希望每个表单都生成以显示每个唯一表单的编号标题。因此,如果我生成5个表单,我希望在表单字段之前显示“表单1”,“表单2”,...“表单5”之前的文本标签。django - 为表单中的表单添加自定义标题

我如何:

  1. 这样一个普通的信息文本标签创建于形式的空间?
  2. 为每个表单设置标题(我假设在模板中)?

谢谢!

回答

3

可以使用forloop.counter将标签贴在模板中的每个表格前,东西如下

<form method="post" action=""> 
    {{ formset.management_form }} 
    <table> 
     {% for form in formset %} 
     <label> Form - {{forloop.counter}} </label> 
     {{ form }} 
     {% endfor %} 
    </table> 
</form> 
0

我意识到the docs给予解决。您可以在Layout访问{{forloop.counter}}和使用HTML通用布局元素创建一个标签:

请注意,您仍然可以使用一个辅助(在这种情况下,我们使用的是 助手用于构建该formset的形式)。 这里的主要区别在于辅助属性应用于表单结构 而布局应用于表单集的表单。渲染表单集 注入布局呈现一些额外的背景下,这样就可以做这样的事情 :

HTML(“{%如果forloop.first%}消息只显示在第一种形式一个formset表单列表的 {% endif%}“,Fieldset(”Item {{forloop.counter }}“,'field-1',[]]