【发布时间】:2015-04-29 14:51:34
【问题描述】:
这听起来可能很愚蠢,但我的视图中有一个用于单个模型的 model_formset,它已传递给我的模板。在我的模板中,我将表单集放在一个循环中:
<form action="generate/" method="post">
{% csrf_token %}
{{ formset.management_form }}
{% for count in formset_count %}
<p id="{{ count }}">{{ formset }}</p>
{% endfor %}
<div class="submitbutton" style="text-align: center;">
<input type="submit" value="Submit">
</div>
</form>
formset_count 只是 1 到 5 的范围。我有 javascript 可以自动在 formset 中输入必要的值,每个 formset 都略有不同。我想通过点击一次提交按钮同时提交并保存所有 5 个表单集。
在我的生成视图中,我有正常的:
f = MyFormSet(request.POST)
if f.is_valid():
f.save()
return HttpResponse("Saved")
else:
return HttpResponse(f.errors)
这只会保存循环中的最后一个表单集。
是否可以使用 modelformset_factory 一次保存所有 5 个表单集(具有不同值的相同表单集)?
【问题讨论】: