4

電子メールの送信に django テンプレートを使用したいと考えています。しかし、HTML とプレーンテキストの 2 つのバージョンの電子メールが必要です。最初のバージョンは次のように生成されます。

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が、これには html タグ ( など<div style="font-size:13px; margin: 14px; position:relative">) が含まれているため、削除する必要があります (リンクはそのままにしておく必要がありますが、プレーン テキストに置き換える必要があります。たとえば、 の<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 に答える