Python 如何使用Django在电子邮件中发送HTML?
我是Django的新手。我想用django通过电子邮件发送html。我正在使用以下代码Python 如何使用Django在电子邮件中发送HTML?,python,django,django-models,django-views,django-mailer,Python,Django,Django Models,Django Views,Django Mailer,我是Django的新手。我想用django通过电子邮件发送html。我正在使用以下代码 send_mail( 'Email Title', 'My Message', 'webmaster@localhost', [to mail], fail_silently=False, ) 这段代码发送的是简单的字符串,而不是HTML。例如
send_mail(
'Email Title',
'My Message',
'webmaster@localhost',
[to mail],
fail_silently=False,
)
这段代码发送的是简单的字符串,而不是HTML。例如,如果我通过了消息正文中的
测试
,那么它将返回相同的结果。我想在“测试”中应用
标记。如何做到这一点?你可以做这样的事情,这样做会奏效的。
但你必须在“html_消息”中传递该消息
from django.template import Template
send_mail(
'Email Title',
html_message = Template("<b>Hello</b>"),
'webmaster@localhost',
[to mail],
fail_silently=False,
)
从django.template导入模板
寄信(
“电子邮件标题”,
html_message=模板(“你好”),
'webmaster@localhost',
[邮寄],
失败=错误,
)
确保发送多个mime、文本和html。有些人可能对html不满意或不喜欢它。
from django.core.mail import EmailMultiAlternatives
from django.template.loader import render_to_string
def send_emails(request):
merge_data = {
'greetings': "hello"
}
html_body = render_to_string("email-templates.html", merge_data)
message = EmailMultiAlternatives(
subject='Django HTML Email',
body="mail testing",
from_email='xyz@abc.com',
to=['wxyz1@abc.com']
)
message.attach_alternative(html_body, "text/html")
message.send(fail_silently=False)