我已经成功使用 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>
我想使用一个提交按钮提交所有表单。
有任何想法吗?
UPDATE
我最终使用了django-crispy-forms https://github.com/maraujop/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 %}
阅读更多内容模型格式集 https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#model-formsets。你不需要有单独的form
标签,这就是使用表单集的全部意义。
<form method="post" action="">
{{ factura_formset.management_form }}
<table>
{% for form in factura_formset %}
{{ form }}
{% endfor %}
</table>
</form>
另外,每次您使用id
在一个页面上多次属性……开发人员哭着睡在世界的某个地方。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)