我想让
django发送电子邮件,但我收到此错误:
Traceback (most recent call last): File "<console>",line 1,in <module> File "/Library/Python/2.7/site-packages/django/core/mail/__init__.py",line 62,in send_mail return mail.send() File "/Library/Python/2.7/site-packages/django/core/mail/message.py",line 286,in send return self.get_connection(fail_silently).send_messages([self]) File "/Library/Python/2.7/site-packages/django/core/mail/backends/smtp.py",line 92,in send_messages new_conn_created = self.open() File "/Library/Python/2.7/site-packages/django/core/mail/backends/smtp.py",line 59,in open self.connection.login(self.username,self.password) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/smtplib.py",line 615,in login raise SMTPAuthenticationError(code,resp) SMTPAuthenticationError: (534,'5.7.9 Application-specific password required. Learn more at\n5.7.9 http://support.google.com/accounts/bin/answer.py?answer=185833 v14sm3323298pbs.11 - gsmtp')
该链接建议我执行两步验证,但我仍然没有结果.
在我的settings.py中
EMAIL_USE_TLS = True EMAIL_HOST = 'smtp.gmail.com' EMAIL_HOST_USER = 'email@gmail.com' EMAIL_HOST_PASSWORD = 'password' EMAIL_PORT = 587
我尝试在django shell中测试它,但得到上面显示的错误:
>>> from django.core.mail import send_mail >>> from django.conf import settings >>> sub = "sup man" >>> msg = "char lisss" >>> from_user = settings.EMAIL_HOST_USER >>> to = ["email@email.com"] >>> send_mail(sub,msg,from_user,to,fail_silently=False)