NoReverseMatch django - 不是有效的视图函数或模式

2023-12-20

目前使用 Django 1.11。我得到一个例外

Reverse for 'book_details' not found. 'book_details' is not a valid view function or pattern name.
Request Method: GET
Request URL:    http://localhost:8000/library/book/c7311ecf-eba7-4e9d-8b1a-8ba4e075245a/
Django Version: 1.11
Exception Type: NoReverseMatch

我想使用get_absolute_url从详细信息页面中的我的模型转到更新页面。当我取出对 .id 的引用并使用 get_absolute_url 时。我检查了名称“book_details”是否被正确引用。我可以转到该页面并正确呈现书籍详细信息。在 Django 的管理控制台中,“现场查看”按钮也无法正确呈现,它显示 localhost:8000/admin/r/13/c7311ecf-eba7-4e9d-8b1a-8ba4e075245a/ 所以它没有获取库/书要么

current <a href =" {{ book.id }}/update">Update</a>

desired <a href =" {{ book.get_absolute_url }}/update">Update</a>

我在哪里输入错误导致此功能不起作用?


文件中的设置:

是的,我确实有 UUID 作为主键。

In views.py

class BookDetailsView(generic.DetailView):
"""
Generic class-based detail view for a Book.
"""
model = Book

in urls.py

url(r'^book/(?P<pk>[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$', views.BookDetailsView.as_view(), name='book_details'),
url(r'^book/(?P<pk>[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/update/$', views.BookUpdate.as_view(), name='book_update'),

in models.py

类书(模型.模型):

def get_absolute_url(self):
    """Returns the URL of the book for details"""
    return reverse('book_details', args=[str(self.id)])

尝试提供pk作为关键字参数reverse功能,

def get_absolute_url(self):
    return reverse('book_details', kwargs={ 'pk': str(self.id) })

另外,您在网址末尾缺少尾部斜杠,

url(r'^book/(?P<pk>[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/$', views.BookDetailsView.as_view(), name='book_details'),
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NoReverseMatch django - 不是有效的视图函数或模式 的相关文章

随机推荐

  • 构建 10x10 UIButton 网格的最佳方法?

    我将有一个 10x10 网格的 UIButton 对象 每个 UIButton 都需要通过行号和列号来引用 因此它们可能应该存储在某种类型的数组中 我的问题 创建这个网格的最简单方法是什么 以编程方式还是通过 Interface Build
  • Android:时间选择器对话框

    我一直在尝试在对话框中创建时间选择器 但在片段类中收到错误消息 该类型未定义方法 is24HourFormat Activity DateFormat 在以下行中 在行 DateFormat is24HourFormat getActivi
  • 自定义元素选择器

    有没有办法用 CSS 选择所有自定义元素 我想让所有自定义元素默认为块元素 大多数浏览器默认使它们内联 然后根据需要覆盖它 我的规则可能看起来像这样 custom display block 所有自定义元素在标准中都有破折号 因此我可以利用
  • WPF 中的错误提供程序

    我正在查看工具箱中的 WPF 组件 但找不到 2005 2008 中出现的错误提供程序 被移除了吗 the 错误提供者 http msdn microsoft com en us library system windows forms e
  • 当我们切换到夏令时并返回时处理日期

    我想用R进行时间序列分析 我想制作一个时间序列模型并使用 timeDate 和 Forecast 包中的函数 我有 CET 时区的日内数据 15 分钟数据 每小时 4 个数据点 3 月 31 日实施夏令时 我丢失了通常拥有的 96 个数据点
  • 正则表达式:两个匹配之间的负向预测

    我正在尝试构建一个类似这样的正则表达式 match word exclude specific word match word 这似乎适用于消极的前瞻 但当我遇到这样的情况时 我遇到了问题 match word exclude specif
  • Android 如何在PrimaryClipChanged 上从剪贴板获取字符串?

    我正在尝试使用以下侦听器将文本复制到剪贴板中 import android content ClipboardManager OnPrimaryClipChangedListener import com orhanobut logger
  • 性能方面 MVC 比 ASP.NET 中的 Web 窗体更好吗

    我们将在 ASP NET 中开发一个网站 那么是使用 MVC 还是 Web 表单更好呢 这取决于您想要建立什么样的网站以及您创建网站的知识和经验 如果您了解自己的知识并且对自己 接近金属 工作的能力 事实上 充满信心 我想您可以使用 ASP
  • 如何在 HQL 中转义冒号?

    我的查询的条件部分如下 where foo bar like 查询将执行但没有结果 我认为这是因为冒号 因为它是 HQL 中的保留字符 那么我怎样才能在不发送的情况下逃脱它 作为我的查询的参数 我已经用过 and 没有成功 我找到了一个解决
  • Python:filter(函数,序列)和map(函数,序列)之间的区别

    我正在阅读 Python 文档 以真正深入了解 Python 语言 并遇到了过滤器和映射函数 我以前使用过过滤器 但从未使用过映射 尽管我在 SO 的各种 Python 问题中都看到过这两种情况 在阅读了 Python 教程中的相关内容后
  • 使用@Factory和@DataProvider进行TestNG

    我对 TestNG 和 Java 编程非常陌生 我对一起使用 Factory 和 DataProvider 有疑问 我想测试多次提交网络表单 每次使用不同的输入数据 我有以下代码 public class SolicitudEmpleo e
  • Chart.js:在饼图之外显示标签

    图表 js 2 6 0 我需要渲染一个如下所示的图表 始终显示所有工具提示不是可接受的方式 因为它们不会以正确的方式呈现 不幸的是我还没有找到解决方案 我已经尝试过件标签插件 但这有同样的问题 因为它的标签重叠 我无法隐藏某些标签 这是使用
  • 在 Rails 中保存和检索数组

    我正在 Rails 中开发电子学习 我想将一组数组保存到数据库中 目的是跟踪用户在电子学习各个部分的进度 我遇到过这个问题并回答 在数据库中存储数组 JSON 与序列化数组 https stackoverflow com questions
  • QQuickView - 无延迟/滞后地调整内容大小

    图像通常是解释某事的最简单方法 这是我遇到的问题的一个小屏幕截图 如果您查看窗口的右侧 您可以看到内容大小的调整有明显的滞后 延迟 这是一个在很多应用程序中都会发生的问题 但我想知道是否有办法在 Qt 应用程序中使用QQuickView和
  • 无法添加 gms play 服务 9.0.1,google-services 插件需要 9.0.0

    我的顶级 build gradle 中有这个 buildscript repositories jcenter dependencies classpath com google gms google services 3 0 0 allp
  • 从现有组件中创建自定义 Swing 组件

    所以 我有这个 JTexrtArea 几乎可以完美满足我的需求 唯一的问题是行距 我无法设置它 为什么不使用 JTextPane 因为 JTextArea 中的间距可以更改 而且 JTextArea 比 JTextPane 轻得多 而且我的
  • Play!Framework 中的批量 HTTP 请求

    我已经实施了当前的一组路线 例如 GET api version entity my controllers GET api version entity id my controllers POST api version entity
  • 调用/创建委托

    今天是个好日子 我注意到有两种方法可以调用 创建委托 MrDel MyDelegate new MrDel Mathmetics Method or MrDel MyDelegate Mathmetics Method 所以我的问题是这两种
  • 根据背景图像颜色自动对比文本颜色

    我正在寻找一种方法 根据名为 横幅 的 div 中背景图像的主颜色 将文本颜色更改为 000 或 fff 每个页面上的背景图像都是随机选择的 因此我需要能够自动执行此操作 我碰到JavaScript 颜色对比器 https stackove
  • NoReverseMatch django - 不是有效的视图函数或模式

    目前使用 Django 1 11 我得到一个例外 Reverse for book details not found book details is not a valid view function or pattern name Re