在 Django 中返回“HttpResponseNotFound”和引发“Http404”有什么区别?

2024-03-17

在 Django 中显然有两种不同的方法返回 404 错误:HttpResponseNotFound对象或通过提出Http404例外。虽然我在项目中使用前者,但 Django 的内部视图似乎主要使用后者。除了“例外就是例外”的口头禅之外,这两种方式之间有什么区别以及我应该使用哪一种?


An HttpResponseNotFound就像正常的一样HttpResponse除非它发送错误代码 404。因此,您需要在该视图中呈现适当的 404 页面,否则浏览器将显示其自己的默认值。

提高Http404异常会触发Django调用自己的404错误视图。实际上,这只不过是渲染 404.html 模板并发送它 - 使用HttpResponseNotFound, 实际上。但方便之处在于您可以在一处指定模板(以及视图,如果您愿意的话)。

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

在 Django 中返回“HttpResponseNotFound”和引发“Http404”有什么区别? 的相关文章

  • Django - 一个视图中的多个模型(表)

    操作系统 Windows10 Python 3 7 4 姜戈 2 1 我想展示这个模型 像这样在此输入图像描述 https i stack imgur com 2UERg jpg 但我不知道 我怎样才能做到这一点 我尝试了三个月来解决这个问
  • Python/Django:我应该使用哪个authorize.net 库?

    我需要使用 Authorize net 集成来进行订阅付款 可能使用 CIM 要求很简单 每月定期付款 有几个不同的价格点 客户信用卡信息将存储在authorize net 中 周围有很多库和代码片段 我正在寻找关于哪些最有效的建议 Sat
  • uwsgi协议比http协议快吗?

    我正在尝试部署 django 应用程序的各种设置 我的第一选择是使用带有 mod wsgi 的简单 apache 服务器 我之前已经实现了该服务器供私人使用 由于当前的部署是供公众使用的 因此我正在考虑各种选择 根据网上提供的信息 使用 n
  • Django 数据库迁移与 postgres 失败

    我对模型做了一些更改 然后运行了 python 管理 py makemigrations python 管理 py 迁移 我得到了这个回溯 Operations to perform Synchronize unmigrated apps
  • Pycharm错误:配置不正确

    在我的 DEV 计算机意外关闭后 当返回 Pycharm 项目时 我注意到我正在编辑的 Django 视图文件 有 700 多行 发生这种情况时 它完全是空的 我设法从备份中恢复它 那里没有损失 尝试调试时出现问题 它返回此错误 不正确配置
  • 优化 Django Queryset for 循环

    如何优化以下查询集 link goal for link in self child links all 我想摆脱 for 循环并只访问数据库一次 我有以下代码 class Goal models Model name models Cha
  • 如何将当前登录的用户指定为模型字段的默认值?

    我想做这样的事情 class Task models Model created by models ForeignKey User default LoggedInUser blank True null True related nam
  • Django - 以表单形式访问 request.session

    我按如下方式调用表单 然后将其传递给模板 f UserProfileConfig request 我需要能够访问表单中的 request session 所以首先我尝试了这个 class UserProfileConfig forms Fo
  • 查询中的自定义属性

    鉴于下面的简化示例 我将如何访问查询集中的自定义 current status 属性 有可能吗 目前 我想列出所有当前事件并显示当前状态 我可以让属性显示在模板中 但我无法通过它来排序查询集 或者 我是否需要在 选择 中创建一个带有某种嵌套
  • Django:我可以使用 CreateView 创建一个 User 对象,其中 User 只是 Django 的内置用户模型吗?

    我正在尝试创建一个简单的用户登录系统 用户可以在一个页面上注册 然后使用这些凭据在另一页面上登录网站 这是我的注册和登录视图 class SignupView CreateView model User form class SignupF
  • Django 1.8 - migrate 和 makemigrations 有什么区别?

    根据这里的文档 https docs djangoproject com en 1 8 topics migrations https docs djangoproject com en 1 8 topics migrations 它说 m
  • Django:如何将 Django Rest 框架集成到现有应用程序中?

    我应该如何将 Django REST API 框架集成到现有应用程序中 或者我必须创建一个新项目 您不需要开始一个新项目 基本步骤是 安装DRF 类似pip install djangorestframework Add rest fram
  • Python:内联 if 语句 else 不执行任何操作

    如果 Django 模型的字段匹配条件 则将其分配给一个值 g Car objects get pk 1234 g data version my dict dataVersion if my dict else expression fa
  • 修改不同Django用户的会话数据

    这可能不可能 但是当某些情况发生时 我想修改某些登录用户的会话数据 标记一些额外的逻辑需要在下次加载页面时运行 有没有办法通过用户 ID 访问用户的会话 tldr Query Session模型 然后通过修改匹配会话SessionStore
  • Daphne Django 文件上传大小限制

    我使用 Daphne 进行套接字和 http 连接 我正在运行 4 个工作容器 并且现在在 docker 容器中本地运行所有内容 如果我尝试上传 400MB 的文件 我的 daphne 服务器会失败 它适用于最大 15MB 的小文件 我的
  • Django 模板:输出带有所有小数位的浮点数

    我如何在 django 模板中输出这个数字 小数位数是可变的 我事先不知道 x 0 000015 1 x 输出是 1 5e 05 2 x stringformat f 输出是 0 000015 这不是本地化的 应该有逗号 我需要对输出进行本
  • 使用缓存时计算“页面浏览量”或“点击量”

    我有一个叫做show board 在其中 除其他外 我增加了一个字段Board views每次运行时加 1 以计算页面浏览量 问题是当我在该视图上使用 cache page 装饰器时 Board views仅在每次生成新的缓存视图时才会增加
  • django:如何在模板html页面内进行计算?

    您好 我正在使用缩略图插件来获取图像的宽度和高度 现在我想使用从缩略图插件获取的高度来定义 img 标签的填充 例如 img style padding top img height 2 src 但是我在这里遇到错误 django不允许这样
  • 具有 auto_now_add 的 Django DateTimeField 要求默认值

    我的模型中有这个字段created at models DateTimeField auto now add True 当我尝试进行迁移时出现错误 You are trying to add the field created at wit
  • 如何在 Django Rest Framework 中将当前用户设置为用户字段?

    我有以下代码完美运行 我可以创建一个Post通过选择图像和用户从 DRF 面板中获取对象 但是我希望 DRF 由当前登录的用户填充用户字段 模型 py class Post TimeStamped user models ForeignKe

随机推荐

  • 如何使用C#语言向数据库插入记录?

    我只是 C 的初学者 所以我需要太多帮助 现在的问题是我设计了一个 Windows 表单 其中有很多字段 如名字 姓氏 地址等 现在我想做的是 当我填写表单并单击插入按钮时 所有信息都会进入数据库 有谁知道这是怎么做到的吗 private
  • 如何将 mysqli_stmt_bind_param 用于整数、布尔值等

    我正在尝试使用此方法将参数绑定到其特定类型 mysqli stmt bind param mysqli stmt stmt 字符串类型 混合 var1 混合 我知道第二个参数是一个类型的字符串 其中 s is for strings d i
  • 背景不适用于 div,因为它应该

    我的路径有一个奇怪的问题 这个可以工作 在 Windows 上 div style background none div folder1 image gif 尽管如此 此页面的说法完全相反 不是第一个版本 而是第二个版本应该有效 背景不适
  • 如何在 Python 中将一个字符串附加到另一个字符串?

    如何有效地将一个字符串附加到另一个字符串 有没有更快的替代方案 var1 foo var2 bar var3 var1 var2 For handling multiple strings in a list see How to conc
  • 简化 semver 版本比较逻辑

    有标准的 npm semver 版本比较库 但我在这里有一些简单的逻辑来比较 semver 版本 const versionA 14 8 3 const versionB 15 1 1 const versionC 15 1 2 const
  • 为什么我的 iPhone 应用程序应该使用 Core Data?

    我正在开发我的第二个 iPhone 应用程序 对 Core Data 很好奇 这个项目的时间是有限的 我的总体时间也是有限的 我是唯一的开发人员 我感觉核心数据会很有用 但我无法清楚地解释为什么 请原谅以下混淆 应用程序需要从中央服务器检索
  • facet_wrap() + ggplot2() 中每个面的独立颜色渐变

    我正在努力为每个方面绘制渐变色标facet wrap 独立 数据太大 无法在这里发布 但这是我的代码 ggplot stack aes hour day geom tile aes fill percent colour white fac
  • 如何使用 HTML Agility Pack 修复格式错误的 HTML?

    我的 HTML 格式不正确 标签重叠 p word1 b word2 b p p word3word4 p 重叠也可以嵌套 如何使用 HTML Agility Pack HAP 将其转换为格式良好的 HTML 我正在寻找这个输出 p wor
  • echo $_GET["jsoncallback"] 时出错

    当我回显结果时 它是错误的 如何修复它 由于您没有准确地写出您想要执行的操作 因此我猜测您正在尝试返回 JS 回调函数将放置在文档中的 HTML 选项列表 尝试这个
  • 使用 gnuplot 用数据文件制作电影

    我确实有很多数据文件 他们看着像是 1 数据 2 数据 1000 dat 我想用这些文件按顺序绘制它们来制作一部电影 请问有人有什么想法吗 如果您能帮助我 我将非常高兴 ND 这里你需要两步 第一个是根据数据创建 jpeg 或 png 绘图
  • const_cast<> 的正确用法

    作为一个常见的规则 使用它通常被认为是一种不好的做法const cast lt gt 在 C 代码中 因为它揭示了 大多数时候 设计中的缺陷 虽然我完全同意这一点 但我想知道使用的情况是什么const cast lt gt is ok和唯一
  • 尝试在命令行中静默执行自解压 zip 文件

    我有这些自解压 zip 文件 我正在尝试在 2008 7 机器上远程解压它们 但它们以 exe 的形式出现 需要用户双击并选择提取位置 在 WinZip 支持网站上 他们说要使用 auto 标志 因此命令将如下所示 C deploy exe
  • 简单的udp代理解决方案

    我正在寻找可以代理我的 udp 数据包的解决方案 我有一个客户端向服务器发送 udp 数据包 它们之间的连接非常糟糕 导致大量数据包丢失 一种解决方案是使用一个新的代理服务器 它将所有数据包从客户端重定向到目标服务器 新的代理服务器与这两个
  • py_environment“time_step”与“time_step_spec”不匹配

    我通过 tf 代理创建了一个自定义 py 环境 但是我无法使用 py policy action 验证环境或在其中采取步骤 我对 time step specs 中排除的内容感到困惑 我尝试通过 tf py environment TFPy
  • 如何在C++中检查字符串开头

    C 有没有办法检查字符串是否以某个字符串开头 小于原始字符串 就像我们在 Java 中可以做的那样 bigString startswith smallString std string s Hello world if s find He
  • 有没有办法用 XMLHttpRequest 对象发送二进制数据?

    我正在尝试使用 XMLHttpRequest 发送二进制块 var xhr new XMLHttpRequest var bindata 0x0f0f xhr open POST binary reader php xhr send bin
  • NestJS:“字符串”类型的参数不可分配给“从不”类型的参数

    import INestApplication Injectable OnModuleInit from nestjs common import Prisma PrismaClient from prisma client Injecta
  • Asterisk 拨号方案 (extensions.conf) 应用程序

    我正在开发一个应用程序 允许用户使用手机访问他们的邮箱 我开发了一个 IVR 菜单 用户可以使用它来检索他们的邮件 更具体地说 我用 Perl 编写了一个 AGI 来检索邮件 问题是 AGI 执行需要相当长的时间 为此 我需要让我的用户在执
  • SVN+SSH,不用每次都做ssh-add吗? (苹果系统)

    我知道答案就在那里 但我对 Unix 很笨 如果它击中我的脸 我可能不会认出这个解决方案 我在 Mac 上 通过 SSH 隧道连接到 SVN 服务器 我必须ssh add privateKey txt每次我想连接到SVN服务器时 Corne
  • 在 Django 中返回“HttpResponseNotFound”和引发“Http404”有什么区别?

    在 Django 中显然有两种不同的方法返回 404 错误 HttpResponseNotFound对象或通过提出Http404例外 虽然我在项目中使用前者 但 Django 的内部视图似乎主要使用后者 除了 例外就是例外 的口头禅之外 这