2011-06-16 18 views
3

有沒有更好的方式來獲取表單類中的數據?獲取表單類中的表單數據。

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'] 

回答

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'] 
     ... 
+0

謝謝,我想知道爲什麼我一直在閱讀有關cleaned_data但我的形式並沒有這樣屬性。 – Pickels 2011-06-16 16:34:03