Django mail not sending mail

时光怂恿深爱的人放手 提交于 2019-12-02 08:29:13
email_msg = EmailMessage(subject="subject",
                                     body="content",
                                     to=["xyz@gmail.com"])
email_msg.send()

use EmailMassage

Try this one. This works for me. Your settings.py file seems correct.

from django.core.mail import EmailMessage

SUBJECT = "Welcome To my site"


def send_email(email, password):
    """ send email to new user with temp password"""

    msg = EmailMessage(SUBJECT, 'Your temporary login password here. {password}'.format(password=password), to=[email])
    msg.send()
    return True

Try this one

from django.core.mail import EmailMessage 

to_email = your_user_email
mail_subject = your_message_subject
message = your_content
send_message = EmailMessage(mail_subject, message, to=[to_email])
send_message.content_subtype = "html"
send_message.send()

As content you can add dictionaries or other data what you wish. If you want to send a template then you can use

render_to_string

from django.template.loader import render_to_string

message = render_to_string('path_to_your_template.html', {
        'domain':current_site,
        'email': request.user.email,
        'data' : your_data
    })
send_message = EmailMessage(mail_subject, message, to=[to_email])
send_message.content_subtype = "html"
send_message.send()
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!