/ / DjangoでHTML電子メールを送信する[複製] - python、html、django、email

Djangoでhtml電子メールを送信する[複製] - python、html、django、email

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"に供給できるかどうか

回答:

回答№1の場合は10

はい、できます。私自身のプロジェクトでは、同じことをするために次のコードを使用します。

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>