У меня есть простой метод, который возвращает zip-архив с файлом .pdf.Вот часть кода, который генерирует zip-архив и возвращает его:
pdf_file = HTML(string=rendered_html, base_url=request.build_absolute_uri()).write_pdf()
temp = tempfile.TemporaryFile()
archive = zipfile.ZipFile(temp, 'w', zipfile.ZIP_DEFLATED)
with archive:
archive.writestr('report.pdf', pdf_file)
wrapper = FileWrapper(temp)
http_response = HttpResponse(wrapper, content_type='application/zip')
http_response['Content-Disposition'] = 'attachment; filename=report.zip'
return http_response
Проблема в том, что я получаю в ответ 0-байтовый zip-архив.Что я делаю не так?
ОБНОВЛЕНО
Также я добавляю эти 2 строки кода перед return
, но с этим я получаю seek of closed file
http_response['Content_Length'] = temp.tell()
temp.seek(0)