Django版本1.8.7我正在创建一个页面,用户必须在其中添加除草对象列表,因此我需要在同一页面上多次使用相同的表单来创建受邀者的简单模型实例;为此,我使用了modelformset_factory函数的模型表单集。
所以在我的form.py中
class InviteesForm(ModelForm):
class Meta:
model = Invitees
fields = ['user', 'invitee_name' , 'invitee_address', 'invitee_count',
'invitee_email']
exclude = ('user',)
#creating a formset
InviteesFormSet = modelformset_factory(Invitees, form = InviteesForm )
上面您可以看到我的被邀请人模型的模型表单和使用modelformser_factory功能的InviteesFormSet。
在我的views.py中
def preview(request):
formset = forms.InviteesFormSet(queryset=Invitees.objects.all())
if request.method == 'POST':
formset = forms.InviteesFormSet(request.POST)
if formset.is_valid():
formset.save(commit = False)
return redirect('/invitees/')
else:
formset = forms.InviteesFormSet(request.POST)
return render(request, 'preview.html', {'formset': formset} )
在我的Preview.html中
<form action="/preview/" method='POST'>
{% csrf_token %}
{{ formset.management_form }}
<button type="submit">Add an Invitee</button>
</form>
该表单集未在我的html中呈现,不确定在这里我在做什么错,这是基本代码!但我收到此错误
[u'ManagementForm数据丢失或已被篡改']
我尝试通过在模板页面的表单集上添加.management_form来尝试此处提到的解决方案:请参见此处https://docs.djangoproject.com/en/dev/topics/forms/formsets/#understanding-the-managementform
您能帮我解决问题吗?
谢谢
来自您的代码