/ / Django क्लास-आधारित दृश्य में किसी फ़ॉर्म के सबमिट किए गए मान को कैसे प्राप्त करें? - django, django-रूप, django-विचार

Django क्लास-आधारित दृश्य में किसी फ़ॉर्म के सबमिट किए गए मान को कैसे प्राप्त करें? - django, django-रूप, django-विचार

मेरे पास एक Django रूप है जो इस तरह दिखता है:

class myForm(forms.Form):
email = forms.EmailField(
label="Email",
max_length=254,
required=True,
)

मेरे पास एक संबद्ध क्लास-आधारित फॉर्म व्यू हैनीचे दिखाया गया है। मैं देख सकता हूं कि फॉर्म सफलतापूर्वक डेटा को सत्यापित कर रहा है और प्रवाह नीचे form_valid () विधि में हो रहा है। मुझे यह जानने की ज़रूरत है कि उपयोगकर्ता द्वारा ईमेल फ़ील्ड में सबमिट किए गए मान को कैसे प्राप्त किया जाए। form.fields["email"].value काम नहीं करता है

class myFormView(FormView):
template_name = "myTemplate.html"
form_class = myForm
success_url = "/blahblahblah"


def form_valid(self, form):
# How Do I get the submitted values of the form fields here?
# I would like to do a log.debug() of the email address?
return super(myFormView, self).form_valid(form)

उत्तर:

उत्तर № 1 के लिए 13

आप फॉर्म की जांच कर सकते हैं cleaned_data विशेषता, जो आपके फ़ील्ड के साथ कुंजी के रूप में कुंजी और मान के रूप में एक शब्दकोश होगा। डॉक्स यहाँ.

उदाहरण:

class myFormView(FormView):
template_name = "myTemplate.html"
form_class = myForm
success_url = "/blahblahblah"


def form_valid(self, form):
email = form.cleaned_data["email"] <--- Add this line to get email value
return super(myFormView, self).form_valid(form)

उत्तर № 2 के लिए 1

इसे इस्तेमाल करे:

 form.cleaned_data.get("email")