django形式的问题

时间:2011-05-07 00:37:15

标签: python django django-forms

我有以下django表格。它有一个选择字段。我试图获取radioSelect小部件中选择的值。我正在使用(cleaning_data)方法执行此任务。 但由于某种原因,它无法访问clean_data方法。

例外值:'AnswersForm' object has no attribute 'cleaned_data'

forms.py:


class AnswersForm(forms.Form):

        CHOICES=[('sf','asdf')]
        answers = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect())


并在views.py中:


    form = forms.AnswersForm()
    form.cleaned_data['answers']


有谁知道发生了什么事?还是有另一种方式来执行此操作?

提前致谢

2 个答案:

答案 0 :(得分:4)

您不会显示将数据传递到表单或检查其是否有效的任何代码。通常的做法是这样的:

if request.method == 'POST':
    form = Forms.AnswersForm(request.POST)
    if form.is_valid():
        do_something_with(form.cleaned_data['answers'])

在致电cleaned_data

之前,您无法访问is_valid()

答案 1 :(得分:0)

使用Form.clean()它只返回self.cleaned_data

注意: 清除forms.py

中的数据
def clean(self,):
  Here you can clean the form.

**供参考** Go Here (Django doc)