我已经设法使用 modelformset_factory 创建了我需要的表单。
avaluos = Avaluo.objects.filter(Estatus__contains='CONCLUIDO',Factura__isnull=True)
FacturaFormset = modelformset_factory(Avaluo,form=FacturaForm,extra=0)
目前,这正在为找到的每一行生成以下 HTML:
<form id="id-FacturaForm" class="blueForms" method="post">[..]</form>
<form id="id-FacturaForm" class="blueForms" method="post">[..]</form>
<form id="id-FacturaForm" class="blueForms" method="post">[..]</form>
我想使用单个提交按钮提交所有表单。
有任何想法吗?
更新
我最终使用了django-crispy-forms,它允许我为每一行生成输入,然后我只是手动添加表单并提交。
self.helper.form_tag = False
{{example_formset.management_form }}
{% for a,b in olist %}
{{ b.id }}
<tr>
<td style="width:10px;"> {% crispy b %} </td>
<td> {{a.id}} </td>
</tr>
{% endfor %}