如何在 Django 视图中显示 PDF 文件?

2024-01-09

是否可以显示 PDF 文件inDjango 视图,而不是让用户必须下载它才能看到它?

如果可能的话,会怎样做?

这就是我到目前为止所拥有的 -

@login_required
def resume(request, applicant_id):

    #Get the applicant's resume
    resume = File.objects.get(applicant=applicant_id)
    fsock = open(resume.location, 'r')
    response = HttpResponse(fsock, mimetype='application/pdf')

    return response

Django有一个专门用于返回文件的类,文件响应 https://docs.djangoproject.com/en/stable/ref/request-response/#django.http.FileResponse。它流式传输文件,这样您就不必在返回文件之前将整个文件读入内存。干得好:

from django.http import FileResponse, Http404

def pdf_view(request):
    try:
        return FileResponse(open('foobar.pdf', 'rb'), content_type='application/pdf')
    except FileNotFoundError:
        raise Http404()

如果您有非常大的文件或者经常这样做,更好的选择可能是使用正常的服务器配置在 Django 之外提供这些文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Django 视图中显示 PDF 文件? 的相关文章

  • 如何在 success_url 中传递上下文数据?

    我制作了一个表单 我希望再次返回相同的表单 这次使用可在我的模板中使用的上下文数据来显示表单已成功发送 我怎样才能做到这一点 class ContactUsView FormView form class ContactUsForm tem
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • pandas 替换多个值

    以下是示例数据框 gt gt gt df pd DataFrame a 1 1 1 2 2 b 11 22 33 44 55 gt gt gt df a b 0 1 11 1 1 22 2 1 33 3 2 44 4 3 55 现在我想根据
  • 如何在Windows上模拟socket.socketpair

    标准Python函数套接字 套接字对 https docs python org 3 library socket html socket socketpair不幸的是 它在 Windows 上不可用 从 Python 3 4 1 开始 我
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • 安装后 Anaconda 提示损坏

    我刚刚安装张量流GPU创建单独的后环境按照以下指示here https github com antoniosehk keras tensorflow windows installation 但是 安装后当我关闭提示窗口并打开新航站楼弹出
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • 当玩家触摸屏幕一侧时,如何让 pygame 发出警告?

    我使用 pygame 创建了一个游戏 当玩家触摸屏幕一侧时 我想让 pygame 给出类似 你不能触摸屏幕两侧 的错误 我尝试在互联网上搜索 但没有找到任何好的结果 我想过在屏幕外添加一个方块 当玩家触摸该方块时 它会发出警告 但这花了很长
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • ExpectedFailure 被计为错误而不是通过

    我在用着expectedFailure因为有一个我想记录的错误 我现在无法修复 但想将来再回来解决 我的理解expectedFailure是它会将测试计为通过 但在摘要中表示预期失败的数量为 x 类似于它如何处理跳过的 tets 但是 当我
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 协方差矩阵的对角元素不是 1 pandas/numpy

    我有以下数据框 A B 0 1 5 1 2 6 2 3 7 3 4 8 我想计算协方差 a df iloc 0 values b df iloc 1 values 使用 numpy 作为 cov numpy cov a b I get ar
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject
  • Python 分析:“‘select.poll’对象的‘poll’方法”是什么?

    我已经使用 python 分析了我的 python 代码cProfile模块并得到以下结果 ncalls tottime percall cumtime percall filename lineno function 13937860 9

随机推荐

  • Java 中的 try、catch、finally 中的 return 是如何工作的?

    我不明白到底如何return工作于try catch 如果我有try and finally没有catch 我可以把return在 的里面try block 如果我有try catch finally 我不能放return in the t
  • 如何获得 PHP 数组中下一个值和上一个值之间的减法[重复]

    这个问题在这里已经有答案了 我有这样的数据数组 array 0 0 0 19 0 5 0 75 1 0 1 25 1 5 1 75 2 0 2 25 我想要得到的是下一个值和上一个值之间的绝对减值数组 0 0 0 19 0 19 0 5 0
  • 使用 AWS 负载均衡器的 A(主机)记录

    我有关于 AWS 负载均衡器的问题 我可以指点我的CNAMEwww 完美地连接到我的负载均衡器的 DNS 我知道它将始终有效 但我还需要将 记录指向负载均衡器 以便人们可以访问mysite com代替www mysite com并点击负载均
  • Haskell 在计算字母方面能打败 C 吗?

    剧透 是的 见下文 尝试优化字母计数器以匹配 C 我已经与它斗争到了 2 倍的赤字 letterCount B ByteString gt V Vector Int letterCount bs V accumulate a gt a 1
  • 带块的 File.open 与不带块的 File.open

    我有一个关于 Block 的问题 这两个代码的含义相同吗 code 1 File open yozloy txt w do f f lt lt Some contains end code 2 newFile File open yozlo
  • 添加标签覆盖谷歌地图

    我成功添加信息窗口
  • 响应式 HTML 电子邮件可以使用手风琴吗?

    我的客户想要一封响应式电子邮件 其中文本未完全显示 但已嵌入电子邮件正文中 当用户单击 单击更多 时 文本会展开并且所有文本都变得可见 那可能吗 据我所知 伪类在电子邮件客户端上是不可能的 并且使用内联编码构建手风琴在技术上非常困难 有任何
  • AS3敌人双倍速度?

    我使用 AS3 和 Air 3 2 for Android 在 Flash CS6 中制作了一个游戏 现在这个游戏你会进入不同的菜单 当你死后 它会返回主菜单并显示你的分数 现在当你选择一个新角色并玩时再次穿越 怪物速度翻倍 知道为什么吗
  • 如何使用 proc http 和 http_tokenauth 在后台调用 SAS STP

    我正在尝试使用选项后台通过 proc http 从 SAS 调用存储进程 STP 以确保我的主进程不会等待 STP 完成 我确实使用以下代码 filename resp
  • Idris:函数使用 Nat 参数,但使用 Integer 参数时类型检查失败

    我是伊德里斯的新手 我正在尝试类型 我的任务是制作一个 洋葱 一个带有两个参数的函数 一个数字和任何东西 并将任何东西放入List嵌套了这么多次 例如 结果为mkOnion 3 Hello World 应该 Hello World 我做了这
  • 在向后传递中调试 nan

    我正在尝试调试一个有点复杂且非规范的神经网络架构 计算前向传递很好 并且给了我预期的结果 但是当我尝试使用 Adam 或任何标准优化器进行优化时 即使在学习率非常小的一次迭代之后 我到处都得到 nan 我正在尝试对它们进行本地化 并且想知道
  • 使用 ffmpeg 垂直或水平堆叠(马赛克)多个视频? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有两个长度完全相同的视频 我想使用 ffmpeg 将它们堆叠到一个视频文件中 我怎样才能做到这一点 Use the vstack htt
  • 告诉 jQuery 在动画序列期间忽略点击

    我正在为 jQuery 编写一个幻灯片放映应用程序 单击一个按钮 然后滑动浏览图像列表 但是我遇到了一个小错误 它将响应click 即使在动画发生时也发出请求 我正在使用animate 功能已经存在 因此这不会避免额外的动画请求 有什么办法
  • Winforms TextBox 可以设置背景图片吗?

    是否可以更改 Windows 窗体的背景图像TextBox在 C 中 没有BackgroundImage财产 我应该覆盖Paint方法不知何故 这是不可能的 如果您尝试在构造函数中重写 TextBox 并调用 SetStyle Contro
  • $().ready() 和 $(document).ready() 之间有区别吗

    我见过一些代码 他们只是这样做 ready function 这比执行文档选择器要短 但它是同一件事吗 轻微变化 document ready function 等于 function 从 jQuery 1 4 开始 ready funct
  • 我可以在远程/本地接口中使用继承吗? (EJB3)

    一个例子 Remote public interface SomeComponentRemote public Something processStuff Local public interface SomeComponentLocal
  • C# .NET 中的 FLV/F4V 对话库?

    是否有任何库可以在 c NET 中以编程方式将输入视频 某些特定视频文件 转换为 f4v 或 flv 提前致谢 http ffmpegdotnet codeplex com http ffmpegdotnet codeplex com
  • 如何在绘图的 y 轴上显示 % 值?

    在任何 Mathematica 图表或绘图中 如何在 y 轴上显示 值 我可能有这样的数据 data 2010 8 3 0 2010 8 31 0 052208 2010 9 30 0 008221 2010 10 29 0 133203
  • 雪花存储过程 While 函数

    我如何在雪花示例中重新创建 while 函数 WHILE counter lt LastRow BEGIN SELECT DateLoad CONVERT date SUNDAY FROM Staging Stg EC WeeksLoad
  • 如何在 Django 视图中显示 PDF 文件?

    是否可以显示 PDF 文件inDjango 视图 而不是让用户必须下载它才能看到它 如果可能的话 会怎样做 这就是我到目前为止所拥有的 login required def resume request applicant id Get t