4

我想使用 django 模板进行电子邮件发送。但我应该有两个版本的电子邮件 - html 和纯文本。第一个版本生成如下:

template_values = {
     'company_id': company.id
     }
template_file = os.path.join(os.path.dirname(__file__), 'templates/email.html')
html = template.render(template_file, template_values)

现在我应该从同一个文件生成纯文本 - templates/email.html,但它包含<div style="font-size:13px; margin: 14px; position:relative">我应该删除的 html 标签(如 )(链接应该保留,但应该用纯文本替换,例如,<a href="http://example.com">Example</a>应该用类似的东西替换Example (http://example.com))。

我读过我不应该为此使用正则表达式。什么样的内置 GAE 库可以帮助我?或者有什么方法可以使用 django 的striptags吗?

4

1 回答 1

8

获得 HTML 后,您需要执行以下操作:

from django.utils.html import strip_tags

template_values = {
     'company_id': company.id
}
template_file = os.path.join(os.path.dirname(__file__), 'templates/email.html')
html = template.render(template_file, template_values)

plain_text = strip_tags(html)
于 2012-10-21T10:24:39.123 回答