Я пытаюсь создать файл pdf из шаблона HTML с помощью пакета Weasyprint python, и мне нужно отправить его по электронной почте, используя.
Вот что я пробовал:
views.py:
user_info = {
"name": 'nadjib',
}
html_string = render_to_string('Proformas/command.html')
html = HTML(string=html_string,base_url=request.build_absolute_uri())
# html.write_pdf(target='/tmp/mypdf.pdf');
fs = FileSystemStorage('/tmp')
with fs.open('mypdf.pdf') as pdf:
response = HttpResponse(pdf, content_type='application/pdf')
response['Content-Disposition'] = 'filename="Commande.pdf"'
pdf = weasyprint.HTML(string=html_string, base_url=request.build_absolute_uri()).write_pdf(
stylesheets=[weasyprint.CSS(string='body { font-family: serif}')])
to_emails = ['nadjzdz@gmail.com']
subject = "SH INFOR FACTURE"
email = EmailMessage(subject, body=pdf, from_email='attaazd@gmail.com', to=to_emails)
email.attach("Commande".format(user_info['name']) + '.pdf', pdf, "application/pdf")
email.content_subtype = "pdf" # Main content is now text/html
email.encoding = 'us-ascii'
email.send()
return response
PDF-файл успешно обработан, но не отправлен по почте?