Печать в PDF Django & ReportLab - PullRequest
       18

Печать в PDF Django & ReportLab

1 голос
/ 28 сентября 2019

В настоящее время у меня есть это представление в Django, которое прекрасно отображает кучу записей на моей html-странице

def patient_page(request, id):
    pat = models.patient.objects.get(pk=id) # Goes to patient models returns pk according to page
    rec = models.record.objects.all().filter(patient_assign__pk=id).order_by('-date')
    return render(request=request,
                  template_name = 'main/patient_page.html',
                  context = {"pats":pat,
                             "rec":rec
                             }
                  )

У меня также есть этот код, который отлично печатает, я мог бы легко вставить переменную.

def write_pdf_view(textobject):

    #Need to play with filename.
    response = HttpResponse(content_type='application/pdf')
    response['Content-Disposition'] = 'inline; filename="txt_obj.pdf"'
    buffer = BytesIO()
    my_canvas = canvas.Canvas(buffer)

    # Create textobject(s)
    textobject = my_canvas.beginText(30 * mm, 65 * mm)
    textobject.setFont('Times-Roman', 8)
    textobject.textLine(text="+ Hello This text is written 30mm in and 65mm up from the mark")

    my_canvas.drawText(textobject)

    title = "this is my title"
    my_canvas.setTitle(title)


    my_canvas.showPage()
    my_canvas.save()
    pdf = buffer.getvalue()
    buffer.close()
    response.write(pdf)
    return response

Мой вопрос, есть ли у кого-нибудь представление о том, как я могу выполнить рендеринг в pdf и печать в PDF, т.е. рядом с записью в html У меня есть кнопка печати, которая в настоящий момент запускает мой скрипт печати в pdf.

...