【问题标题】:Sending a html email in Django [duplicate]在 Django 中发送 html 电子邮件 [重复]
【发布时间】:2015-06-10 14:04:27
【问题描述】:

自从 Django 1.7 发布以来,情况发生了一些变化。 我正在尝试使用“send_mail”发送 HTML 电子邮件。

我想在注册我的网站后向用户发送一封感谢邮件。

我正在使用

subject = 'Thank you from ******'
message = 'text version of HTML message'
from_email = my email address
to_list = users email address
html_message= really long set of html code

send_mail(subject,message,from_email,to_list,fail_silently=True,html_message=html_message) 

是否可以将 html 作为文件存储在服务器上,然后将其转换为字符串,以便将其输入到 'html_message' 中?

【问题讨论】:

    标签: python html django email


    【解决方案1】:

    是的,你可以。在我自己的项目中,我使用以下代码来做同样的事情:

    from django.template import loader
    
    html_message = loader.render_to_string(
                'path/to/your/htm_file.html',
                {
                    'user_name': user.name,
                    'subject':  'Thank you from' + dynymic_data,
                    //...  
                }
            )
    send_mail(subject,message,from_email,to_list,fail_silently=True,html_message=html_message)
    

    html 文件如下所示:

    <!DOCTYPE html>
    <html>
        <head>
        </head>
        <body>
            <h1>{{ user_name }}</h1>
            <h2>{{ subject }}</h2>
        </body>
    </html>
    

    【讨论】:

    • 干得好,工作正常
    猜你喜欢
    • 2011-03-15
    • 2015-09-22
    • 1970-01-01
    • 1970-01-01
    • 2016-05-06
    • 2013-06-27
    • 1970-01-01
    • 2015-08-04
    • 2013-02-11
    相关资源
    最近更新 更多