当前路径,与其中任何一个都不匹配

Posted

技术标签:

【中文标题】当前路径,与其中任何一个都不匹配【英文标题】:The current path,didn't match any of these 【发布时间】:2020-11-22 03:13:14 【问题描述】:

我在 urls.py 中有这个

urlpatterns = [
path("product/<str:title>/<slug:pname>/<uuid:puid>",views.viewProduct),
]

但是当我尝试点击网址时。我收到了这个错误。

The current path, product/amazon/home-secure-snake-shield-natural-snake-r/B0882NKXW7, didn't match any of these.

这里我只想要 puid 但为了匹配我添加 str:title 和 str:pname 的 URL 模式

我不想要标题和 pname。但是我的 URL 模式是这样的-

product/store_name/product_name_slug/product_id

【问题讨论】:

B0882NKXW7 不是有效的uuid,例如uuid2707820f-5182-407d-9c07-ff7845807d4c 那么如何获得这个B0882NKXW7? 那么问题是您的B0882NKXW7 来自哪里?看起来这是在模板/视图/中以某种方式编码的...您可以使用&lt;str:puid&gt; 接受B088... 谢谢。我使用 str:puid 它对我有用。非常感谢。 【参考方案1】:

B0882NKXW7 不是UUID [wiki] 的有效格式。实际上,一个 UUID 通常表示为 16 个八位字节。例如2707820f-5182-407d-9c07-ff7845807d4c 是一个 UUID。

您可以define your own path converter [Django-doc] 接受您的产品ID,也可以使用str:

urlpatterns = [
    path('product/<str:title>/<slug:pname>/<str:puid>', views.viewProduct),
]

【讨论】:

【参考方案2】:

我替换了网址路径

urlpatterns = [
path("product/<str:title>/<slug:pname>/<str:puid>",views.viewProduct),
]

【讨论】:

以上是关于当前路径,与其中任何一个都不匹配的主要内容,如果未能解决你的问题,请参考以下文章

找不到页面 (404) 请求方法:GET .......当前路径,博客/博客文章,与其中任何一个都不匹配

添加新记录时出错当前路径 blog_app/android/add/ 与其中任何一个都不匹配。 - django

当前路径 Envs/python-projects/learnpy/static/styles/bootstrap4/bootstrap.min.css 与其中任何一个都不匹配

将链接添加到按钮时,当前路径与这些错误中的任何一个都不匹配

当前 URL app/ 与其中任何一个都不匹配

当前 URL 与其中任何一个都不匹配 - 使用多个站点