2017-06-14 8 views
-1

私のテンプレートにPDFをどのように表示することができますか?私はPythonライブラリ要求を使用して、外部APIからの応答を取得しています。 getリクエストでは、APIが私にpdfを送信しますが、それをテンプレートに表示するための処理方法はわかりません。DjangoのAPIからのPDFレスポンスを処理してください

答えて

0

PDFは以下のコードスニペットに示すように、コンテンツ・タイプを設定してのHttpResponseオブジェクトを使用してビューからテンプレートに戻すことができる。

def pdf_response(request): 
    html_template="Your template path" 

    #sending the PDF back as response 
    response=HttpResponse(pdf_file,content_type='application/pdf') 
    response['Content-Disposition']='filename="test.pdf"' 
    return response 

urls.pyファイル

に対応するURLを定義したより

url(r'^pdf/$',views.pdf_response, name='pdf'),

テンプレートに比べて、このようなものを定義します。

PDF Details</h1><a href="{% url 'pdf' %}" class="btn btn-primary">Download</a>

+0

問題は、pdfビューアがドキュメントが正しく表示されない可能性があるという警告を表示することです。私の質問は、もし私がファイルとしてpdfを持っていないのですが、APIへのリクエストの応答が私にそのpdfを返すのです...どうすればいいですか? –

+0

レスポンスを作成する直前に、pdfファイルを取得してメディアフォルダに保存し、応答として返信します。 – AR7

関連する問題