首页 > 解决方案 > 为什么 django 不发送我的电子邮件而是给我一个错误?

问题描述

我试图让 django 发送一封电子邮件,但我在终端中收到来自我其他人的打印件,上面说有问题并且没有发送。为什么会这样?

这是电子邮件的代码:

from django.core.mail import EmailMultiAlternatives
from . import views

def constancia_email(email):

   subject, from_email, to = 'Constancia Monotributo', 'bosi@outlook.es', email
   text_content = 'Hi, this is your pfd.'
   html_content = '<p><strong>Hi!</strong></p> <p>This is your pdf</p>'
   
   msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
   attachment = open('constancia.pdf', 'rb')
   msg.attach('constancia.pdf', attachment.read(), 'text/pdf')
   msg.content_subtype = 'html'
   msg.attach_alternative(html_content, "text/html")
   msg.send()

这是电子邮件的视图部分:

#send email
               constancia_email(email)

               if constancia_email == True:
                   print("Sus datos fueron enviados correctamente, en un máximo de 2 hs. estarás recibiendo tu constancia por email.")
               else:
                   print("No hemos podido procesar su solicitud, por favor reintente nuevamente más tarde.")

我将此添加到我的设置中,因为我遇到了一个错误,但我不确定这是否有帮助,因为我只是在我的控制台中收到了电子邮件,但它仍然没有发送:

EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

标签: pythondjangoemail

解决方案


:)。一切都按预期工作,不是吗?电子邮件控制台后端不会在任何地方发送电子邮件,它只是在控制台中显示它们。

PS:如果你觉得你已经准备好向外界发送电子邮件,请使用 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'


推荐阅读