pso*_*res 3 django django-templates django-forms
好的,我有一个有效的表单集。但给我一个错误,该表单没有属性cleaned_data..
老实说,我完全不知道发生了什么事..
我在终端上尝试了我的代码,它返回了一个空字典..没有错误..
形式:
class Clinical(forms.Form):
_names = list(ClinicalForm.objects.values_list('form_id', 'form_name'))
_names.append(("New", u'Nova entrada'))
cliform_name = forms.ChoiceField(widget=RadioSelect(), choices=_names, label
="", required=True)
Run Code Online (Sandbox Code Playgroud)
意见:
ClinicalSet = formset_factory(Clinical, extra=2)
formset2 = ClinicalSet(request.POST)
if formset2.is_valid():
choice1 = formset2.cleaned_data
return render_to_response('valid_test.html',
{
'formset2': formset2,
'wrongs1': wrongs1,
'choice1': choice1
})
else:
formset2 = ClinicalSet()
return render_to_response('valid_test.html',
{
'formset2': formset2,
'wrongs1': wrongs1,
})
Run Code Online (Sandbox Code Playgroud)
模板:
<form method="post" action="">
<div>
{{ formset2.management_form }}
{% for form in formset2.forms %}
{{ form }}
{% endfor %}
<input type="submit" value="save" />
</div>
Run Code Online (Sandbox Code Playgroud)
如果我注释调用 clean_data 的行(choice1),我不会收到任何错误,并且能够看到表单。
如果我选择一些选项并取消注释该行,它就可以工作。
我有一个类似的表单集:需要选择表单集中的两个表单,并且这个有效。
有效的表单是第一个表单集(上面链接)。帖子参数:
form-0-pres_name 1
form-1-pres_name 2
form-INITIAL_FORMS 0
form-TOTAL_FORMS 2
Run Code Online (Sandbox Code Playgroud)
用户在每个表单中选择一个选项,然后他会重定向到另一个视图(此视图 - formset2)。
非常欢迎任何帮助..
formset_factory
返回一个表单迭代器,即本质上是一个表单列表,它本身不是表单。cleaned_data
仅在表单上可用,因此您必须迭代formset2
:
for form in formset2:
form.cleaned_data # Here I am!
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7700 次 |
最近记录: |