4

我试图使用 django.core.mail 使用默认后端发送电子邮件,但它似乎不起作用。我已经在设置文件中设置了电子邮件凭据、服务器和端口号,但是每当我尝试运行电子邮件的 send() 方法时,该命令都会无限期挂起。

4

2 回答 2

5

视图.py

from django.core.mail import send_mail

def sending_email(request):
    message = ""
    subject = ""
    send_mail(subject, message, from_email, ['to_email',])

在 settings.py 中添加

# Sending mail
EMAIL_USE_TLS = True
EMAIL_HOST='smtp.gmail.com'
EMAIL_PORT=587
EMAIL_HOST_USER='your gmail account'
EMAIL_HOST_PASSWORD='your gmail password'
于 2013-02-13T10:43:42.753 回答
2

尝试使用 use_tls=True 通过 smtp.gmail.com 发送时遇到了同样的问题。原来我设置了错误的端口。这是我现在正在做的事情,它有效:

from django.core.mail import get_connection
from django.core.mail.message import EmailMessage

connection = get_connection(use_tls=True, host='smtp.gmail.com', port=587,username='YourEmail@gmail.com', password='YourPassword')
EmailMessage('test', 'test', 'addr@from.com', ['addr@to.com'], connection=connection).send()
于 2013-02-13T05:47:04.483 回答