ユーザがそれを押すと、Djangoのメディアフォルダからユーザマシンにpdfファイルをダウンロードするリンクを作成します。HTMLファイルのHTTPリンクを使ってDjangoのFileFieldからファイルをダウンロードする
私はさまざまな方法を試みましたが、すべてが間違っていました。ファイルが見つからないか、コードが実行されていてもファイルが破損していることがわかります。
私のHTMLリンク:
<td> <a href="/download/">Download</a></td>
私のURLパターンがビューにリンクします。
url(r'^download/$', views.DownloadPdf),
私のFileFieldにはこのようなものです:スニペットコードに続いて
は、そのビューであります破損したpdfをダウンロード:
def DownloadPdf(request):
filename = '/home/USER/PycharmProjects/MyProject/media/Invoice_Template.pdf'
response = HttpResponse(content_type='application/pdf')
fileformat = "pdf"
response['Content-Disposition'] = 'attachment;
filename=thisismypdf'.format(fileformat)
return response
私はそれを機能させるために何をしなければなりませんか?
あなたがして、あなたの 'media'フォルダを果たす必要がありますあなたはウェブサーバーです。開発時に開発サーバーがこの作業を行います。詳細はhttps://docs.djangoproject.com/en/1.10/howto/static-files/を参照してください。 –