如何在django中的send_mail的纯文本中添加新行或格式?

时间:2011-12-22 08:59:17

标签: python django sendmail

如何在django中的send_mail的简单消息中添加新行或格式?

我试试这个,但它不会工作:

from django.core.mail import send_mail

send_mail('Title!', '<h1>message : message here</h1> <br> message : message', 'myemail@sample.com', ['toemail@sample.com'])

有人对我的情况有所了解吗? 提前谢谢

1 个答案:

答案 0 :(得分:2)

为什么不直接使用Django的模板加载器将文本文件作为字符串呈现到您的电子邮件中,并将HTML作为替代内容附加?

from django.core.mail import EmailMultiAlternatives
from django.template.loader import render_to_string

def send_message(request):
    context = {'foo' : 'bar'}
    text = render_to_string('some-file.txt', context)
    html = render_to_string('some-file.html', context)
    email_msg = EmailMultiAlternatives('An Email', text, from_email,
        ['someone@domain.com'])
    email_msg.attach_alternative(html, 'text/html')
    email_msg.send()