【问题标题】:Django Forms : Make some text sent by form to email appear boldDjango Forms:使表单发送到电子邮件的一些文本显示为粗体
【发布时间】:2014-07-29 10:07:33
【问题描述】:

快速提问。如果我有一个发送到电子邮件的表单,有没有办法让一些发送的文本在电子邮件中显示为粗体?

【问题讨论】:

标签: python html django django-forms


【解决方案1】:

在 Django 1.7 中,send_mail() 接受 html_message 参数:

如果提供了 html_message,则生成的电子邮件将是 以消息为文本/纯内容的多部分/替代电子邮件 type 和 html_message 作为 text/html 内容类型。

例子:

send_mail('Subject', 'Content', 'sender@example.com', ['nobody@example.com'], 
          html_message='This is <b>HTML</b> Content')

对于 Djangohere,或使用第三方,如 django-email-html


此外,您应该考虑使用另一个第三方软件包 - django-mail-templated。它基本上允许您在 django 模板中描述您的电子邮件消息。此外,它允许发送模板中html块中定义的html消息。

例如:

  • 创建模板

    {% block subject %}
    Email subject
    {% endblock %}
    
    {% block body %}
    This is a plain text.
    {% endblock %}
    
    {% block html %}
    This is <b>HTML</b> Content.
    {% endblock %}
    
  • 然后发送:

    from mail_templated import send_mail
    send_mail('my_template.tpl', {}, from_email, [user.email])
    

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-25
    • 2019-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-15
    • 2020-05-20
    相关资源
    最近更新 更多