Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get form data inside form class.

Tags:

django

Is there a better way to get data inside a form class?

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'] 
like image 512
Pickels Avatar asked Jul 20 '26 02:07

Pickels


1 Answers

You mean you need the values of the filled in form?

In your view, check if the form is valid using form.is_valid(); this populates self.cleaned_data containing your cleaned values. Using data isn't all that safe without validating it first.

so:

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']
        ...
like image 190
fijter Avatar answered Jul 22 '26 04:07

fijter



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!