我已经做了一个表单集,它将更新一个模型客户端和一个模型客户端数据,我的问题是它没有呈现一个表单集,而是呈现了3次,我不知道为什么。在
视图.py
def client_data(request):
data = dict()
if request.method == "POST":
form = ClientForm(request.POST)
if form.is_valid():
client = form.save(commit=False)
formset = ClientFormSet(request.POST, instance=client)
if formset.is_valid():
client.save()
formset.save()
return redirect(reverse_lazy('core:index'))
else:
form = ClientForm()
formset = ClientFormSet()
data['form'] = form
data['formset'] = formset
return render(request, 'core/test.html', data)
表单.py
^{pr2}$模板
<form method="POST">{% csrf_token %}
{{ form.as_p }}
{{ formset }}
<button type="submit" class="save btn btn-default">Save</button>
</form>
根据文档,使用inlineformset_factory构建表单集,在inlineformset中,extra选项默认为3。在
试试这个:
https://docs.djangoproject.com/en/1.11/ref/forms/models/#inlineformset-factory
相关问题 更多 >
编程相关推荐