在Django 1.7中使用html发送电子邮件

tim*_*tim 2 html python email django

send_mail()中我们有一个新参数 - html_message.文件

我有email.html文件,我想发送我的消息的HTML版本.我找不到Django 1.7的任何例子.

你能告诉我一个方法,怎么做?我是否需要使用os.open()我的html文件?

谢谢!

Raj*_*mon 7

render_to_string:加载模板,渲染模板并返回结果string. html_message:如果html_message提供,则默认消息替换为Html消息.

邮件/ HTML的message.html

Hi {{ first_name }}.

    This is your {{ email }}

Thank you
Run Code Online (Sandbox Code Playgroud)

views.py

def mail_function(request):
    subject = 'Test Mail'
    from = 'info@domain.com'
    to = 'to@domain.com'
    c = Context({'email': email,
                 'first_name': first_name})
    html_content = render_to_string('mail/html-message.html', c)
    txtmes = render_to_string('mail/text-message.html', c)
    send_mail(subject,
              txtmes,
              from,
              [to],
              fail_silently=False,
              html_message=html_content)
Run Code Online (Sandbox Code Playgroud)