我在 forms.py 中有这个功能。我的 settings.py 中目前没有电子邮件规范。
def send_email(FROM_NAME,FROM,TO,SUB,MSG,EXISTING_EMAIL,EXISTING_PASSWORD):
FROMADDR = "%s <%s>" % (FROM_NAME, FROM)
LOGIN = EXISTING_EMAIL
PASSWORD = EXISTING_PASSWORD
TOADDRS = [TO]
SUBJECT = SUB
msg = ("From: %s\r\nTo: %s\r\nSubject: %s\r\n\r\n" % (FROMADDR, ", ".join(TOADDRS), SUBJECT) )
msg += MSG+"\r\n"
server = smtplib.SMTP('smtp.gmail.com', 587)
server.set_debuglevel(1)
server.ehlo()
server.starttls()
server.login(LOGIN, PASSWORD)
server.sendmail(FROMADDR, TOADDRS, msg)
server.quit()
我这样称呼views.py
它
send_email('my_name','from_me@gmail.com','to_som1@gmail.com','my subject','mymessage','my_existing_email@gmail.com','password_to_existing_email')
这在本地有效。我已经用 yahoomail 和 gmail 对其进行了测试。但是当我上传到 heroku 时,它给出了错误“(535,'5.7.1 请使用您的网络浏览器登录,然后重试。了解更多信息,请访问\n5.7.1 support.google.com/mail/bin/answer.py ?answer=78754 et6sm2577249qab.8')"
任何人都可以帮忙吗?