电子邮件未使用Django send_mail()

时间:2020-04-26 10:55:57

标签: django django-forms smtp

settings.py:

EMAIL_HOST = 'smtp.mail.yahoo.com'
SMTP_PORT = 456
EMAIL_HOST_USER = 'my_email@yahoo.com'
EMAIL_HOST_PASSWORD = 'pass'
EMAIL_USE_SSL = True

方法:

def contact(*args,**kwargs):
    contactform = ContactForm(request.POST, prefix='contactform')
    send_mail(
        'Contact from website by '+contactform.name,
        contactform.message,
        settings.EMAIL_HOST_USER,
        ['saxoya8501@emailhost99.com'],
        fail_silently=False,
    )

它不发送任何电子邮件。在日志中,我得到:

"GET /?contactform-name=myname&contactform-email=aaaa%40gnm.com&contactform-message=aaaaaaaaaaaaaa HTTP/1.1" 200 20808

我使用的表单是这样:

class ContactForm(forms.Form):
    prefix = 'contactform'

    name = forms.CharField(max_length=50)
    email = forms.EmailField()
    message = forms.CharField(widget=forms.Textarea(attrs={'class':'materialize-textarea'}))

关于如何使其工作的任何建议?

1 个答案:

答案 0 :(得分:0)

由于您的Gmail安全,这可能是一个问题。在您的gmail帐户设置中授予权限,以允许不安全的应用