def generate_report_pdf(*, report: Report=None): pdf = FPDF() pdf.add_page() pdf.set_font('Arial', 'B', 14) pdf.cell(100, 100, report.content) filename = f'{uuid.uuid4().hex}.pdf' pdf.output(filename, 'F') with open(filename, 'rb') as f: new_file = ContentFile(f.read(), filename) report.document = new_file report.save() os.remove(filename) return report.document.url