Здесь я пытаюсь отправить изображение вместе с шаблоном html. Для этого я придерживаюсь двух подходов: 1> первый подход, я сделал функцию logo_data (), чтобы получить изображение, и я добавил msg.attach(logo_data())
после msg.attach_alternative()
, но этот метод не сработало. 2> Во втором подходе я отправляю current_site в шаблон через контекст с помощью метода get_current_site()
и определяю изображение с помощью тега stati c, как это в шаблоне, но я также не работал.
Как можно также отправить электронное письмо с изображениями. Отправка html шаблона работает нормально, только изображения в шаблоне не отображаются
<img src="{{site}}{% static 'dist/img/logo.png' %}"
views.py
def logo_data():
with open(finders.find('static/dist/img/logo.png'), 'rb') as f:
logo_data = f.read()
logo = MIMEImage(logo_data)
logo.add_header('Content-ID', '<logo>')
return logo
def send_mail(request):
.............
site=get_current_site(request)
html_content = render_to_string('mailverification/guest_notification_after_cleaning.html',{'site':site.domain})
subject, from_email, to = 'Hello', settings.EMAIL_HOST_USER, email
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
msg.attach_alternative(html_content, "text/html")
msg.attach(logo_data())
msg.send()
return HttpResponse('mail send')