Opened 8 years ago

Last modified 8 years ago

#28113 closed Uncategorized

send_email module needs a name field — at Initial Version

Reported by: kinganu Owned by: nobody
Component: Forms Version: 1.11
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Hi, trying to create a basic contact page with django has been horrendous. what took me 30 minutes to do in flask takes me 3 hours to do in django and still doesnt work.

Why cant I add my own fields to a contact form? At the very least a contact page should have forms for :

Name, Email, Subject, Message.

I cannot send an email with a name variable, which blows my mind. WTForms beats django forms any day, because its actually flexible. Now I have to waste more time figuring out how to file a suggestion for django and fill this out. WOW...........pardon my frustration

class ContactForm(forms.Form):

name = forms.CharField(required=True, max_length=30)
from_email = forms.EmailField(required=True)
subject = forms.CharField(required=True, max_length=50)
message = forms.CharField(widget=forms.Textarea, required=True, max_length=800)

def contact(request):

if request.method == 'GET':

form = ContactForm()

else:

form = ContactForm(request.POST)
if form.is_valid():

name = form.cleaned_dataname
subject = form.cleaned_datasubject
from_email = form.cleaned_datafrom_email
message = form.cleaned_datamessage

try:

recipients = skyldev1@gmail.com
send_mail(name, subject, message, from_email, recipients)

except BadHeaderError:

return HttpResponse('Invalid header found.')

return redirect('index')

return render(request, "home/contact.html", {'form': form})

Change History (0)

Note: See TracTickets for help on using tickets.
Back to Top