我试图使用Django发送电子邮件但没有成功
我将 settings.py 文件配置如下:
func splitFilename(str: String) -> (name: String, ext: String)? {
if let rDotIdx = find(reverse(str), "_")
{
let dotIdx = advance(str.endIndex, -rDotIdx)
let fname = str[str.startIndex..<advance(dotIdx, -1)]
println("splitFilename >> Split File Name >>\(fname)")
}
return nil
}
我写了一个非常简单的视图来测试电子邮件发送:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = "xxx@gmail.com"
EMAIL_HOST_PASSWORD = "xxx"
EMAIL_PORT = 587
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
在我的服务器控制台上,我可以看到此日志:
def send_email_test(request):
from_email = "xxx@gmail.com"
to = "yyy86@gmail.com"
send_mail("test oggetto", "test messaggio", from_email, [to], fail_silently=False)
print "email sent"
return render_to_response('index.html', context_instance=RequestContext(request))
无论如何,我没有在我的电子邮件帐户上收到邮件 有什么建议吗?
答案 0 :(得分:1)
好吧,你正在使用ConsoleBackend,顾名思义就是将电子邮件打印到控制台,以便进行测试。
我希望你想要django.core.mail.backends.smtp.EmailBackend
,如the documentation中所述。
答案 1 :(得分:1)
这是与我的Google帐户的安全设置相关的问题
如果您有些人遇到同样的问题,则需要允许使用外部应用程序访问您的Google帐户
使用以下链接:
https://accounts.google.com/b/0/DisplayUnlockCaptcha
然后点击“继续”按钮,在接下来的30秒内使用您的应用访问您的Google帐户。