时间:2011-06-16 16:02:16

标签: django

有没有更好的方法在表单类中获取数据?

from django import forms

class ContactForm(forms.Form):
    subject = forms.CharField(required=True)
    message = forms.CharField(required=True, widget=forms.Textarea)

    def send(self):
        self.data['data']['subject'] 
        self.data['data']['message'] 

1 个答案:

答案 0 :(得分:6)

你的意思是你需要填写表格的价值吗?

在您的视图中,使用form.is_valid()检查表单是否有效;这会填充包含已清理值的self.cleaned_data。如果不首先验证数据,使用数据并不是那么安全。

这样:

views.py:

if request.method == 'post':
    form = ContactForm(request.POST)
    if form.is_valid():
       form.send()

forms.py:

from django import forms

class ContactForm(forms.Form):
    subject = forms.CharField(required=True)
    message = forms.CharField(required=True, widget=forms.Textarea)

    def send(self):
        subject = self.cleaned_data['subject']
        ...