簡體   English   中英

如何在 Django 中獲取完整的聯系表格信息?

[英]How to get complete contact form information in Django?

這是我的代碼:

設置.py

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'my email@gmail.com'
EMAIL_HOST_PASSWORD = 'myemail password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True

表格.py

class ContactForm(forms.Form):
    name = forms.CharField(max_length=100)
    email = forms.EmailField()
    message = forms.CharField(widget=forms.Textarea, required=True)

視圖.py

def contact(request):
    form = ContactForm
    if request.method == 'POST':
        form = ContactForm(data=request.POST)

        if form.is_valid():
            sender_name= form.cleaned_data['name']
            sender_email= form.cleaned_data['email']
            message = "{0} has sent you a new message:\n\n{1}".format(sender_name, form.cleaned_data['message'])
            try:
                send_mail('New Enquiry', message, sender_email, ['my email@gmail.com'])
            except BadHeaderError:
                return HttpResponse('Invalid header found.')
            messages.success(request, "Your message has ben sent. Thank you for your interest.")

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

但是發件人的電子郵件沒有顯示在電子郵件中,我希望發件人的電子郵件同時出現在 (from:) 和郵件正文中,謝謝您的幫助

圖像接觸測試

您可以將其添加到您的message變量中

message = "{0} has sent you a new message from {1}:\n\n{2}".format(sender_name, sender_email, form.cleaned_data['message'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM