【发布时间】:2016-06-24 06:05:18
【问题描述】:
我有这个错误[u'ManagementForm data is missing or has been tampered with'],即使 management_form 在模板中,我在模板中使用了 2 个表单,我试图在表单集中放置一个前缀,但它不接受前缀。这是我的代码。我不知道我错过了什么,或者我是否需要同时制作两种表格,表格集。 (第一次使用表单集)。
view.py
def DrugsPrescription(request, id):
data = RecipeDataForm(prefix='data')
drugs_formset = formset_factory(DrugsForm)
patient = PatientData.objects.get(pk=id)
errors = None
if request.method == 'POST':
data = RecipeDataForm(request.POST, prefix='data')
drugs_formset = drugs_formset(request.POST, prefix="med")
if data.is_valid():
info = data.save(commit=False)
info.patient = patient
if drugs_formset.is_valid():
info.save()
for form in drugs_formset.forms:
print form
med = drugs_formset.save(commit=False)
med.datos_id = info.pk
med.save()
success_url = reverse('/')
return HttpResponseRedirect(success_url)
else:
print drugs_formset.errors
else:
print data.errors
return render(
request, 'prescription.html',
{'data': data,
'patient': patient,
'drugs_formset': drugs_formset,
'errors': errors})
template.html
<form class="medical" id="drugs" method="POST" enctype="multipart/form-data">
{% crispy data %}
<div>{{errors}}</div>
<div id="data">
{{ drugs_formset.management_form }}
<table border="2">
{% for form in drugs_formset %}
<tr>
{{ form }}
</tr>
{% endfor %}
</table>
</div>
【问题讨论】:
标签: python django django-forms django-views