「xhtml2pdf」を使ってhtmlをPDF出力しています。
公式サイト
https://xhtml2pdf.readthedocs.io/en/latest/usage.html
そのPDFの保存名が今は『invoice.pdf』になっていますが、これを
『'今の日時'invoice.pdf』という動的なものにしたいです。
'今の日時'の部分には[2020-0101-1230]みたいに入れたいです。
response['Content-Disposition'] = 'filename="invoice.pdf"'
を書き換えれば良いと思うのですがどのように書き換えれば良いでしょうか?
調べても二重引用符とアポストロフィで囲われている中で変数を使用する方法がわかりませんでした。
python
1#views.py 2 3#xhtml2pdfの関数 4def invoice_render_pdf_view(request, *args, **kwargs): 5 pk = kwargs.get('pk') 6 invoice = get_object_or_404(Invoice, pk=pk) 7 template_path = 'invoice/invoice.html' 8 context = {'invoice': invoice} 9 # Create a Django response object, and specify content_type as pdf 10 response = HttpResponse(content_type='application/pdf') 11 #もしその画面に行った時にPDFを自動でダウンロードさせたいのであれば下記の1行を記述 12 #response['Content-Disposition'] = 'attachment; filename="report.pdf"' 13 #もしダウンロードさせるのではなく表示させたいのであれば下記の1行を記述 14 response['Content-Disposition'] = 'filename="invoice.pdf"' 15 # find the template and render it. 16 template = get_template(template_path) 17 html = template.render(context) 18 19 # create a pdf 20 pisa_status = pisa.CreatePDF( 21 html, dest=response) 22 # if error then show some funy view 23 if pisa_status.err: 24 return HttpResponse('We had some errors <pre>' + html + '</pre>') 25 return response
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/07 11:54