Django - Html-теги в шаблоне электронной почты
Я использую сигналы Django для отправки писем, когда добавляется новая запись:
@receiver(post_save, sender=MeetingMember)
def send_invited_emails(sender, instance, **kwargs):
host = instance.meeting.host
subject = "Mizban invition"
# htmly = get_template('sendingemail.html')
domain = Site.objects.get_current().domain
context={'host':host,'meeting': instance,'domain':domain}
html_content = render_to_string('sendingemail.html',context)
send_mail(subject, html_content, settings.EMAIL_HOST_USER,[instance.email])
Этот код работает, но он также посылает html теги в электронную почту, как я могу решить эту проблему?
Вторым параметром message
является сообщение, которое вы хотите отобразить в виде raw text. Вы можете передать содержимое HTML сообщения через параметр html_message=…
функции send_mail(…)
[Django-doc]:
# …
html_content = render_to_string('sendingemail.html',context)
send_mail(
subject,
html_content,
settings.EMAIL_HOST_USER,[instance.email],
html_message=html_content
)
Обычно для сообщения также создается текстовый вариант сообщения: без HTML, который может быть использован простыми почтовыми клиентами для отображения письма, например, на консольном терминале.