【问题标题】:I can seem to get right the urlconf line for my absolute path我似乎无法为我的绝对路径找到正确的 urlconf 行
【发布时间】:2012-06-08 18:11:46
【问题描述】:

我一直在尝试各种组合来为我的页面上的单个博客帖子的绝对路径编写 url。 这是我需要做的正确:

mypage.com/blog/2012/6/dasdf/

这显然行不通,我也尝试使用命名组?P:

(r'^\d{4}/d{1,2}/(?P<path>.*)/$', detail),

你能告诉我应该怎么做,这样我就可以看出哪里错了吗?

p.s 这里是错误

The current URL, blog/2012/6/dasdf/, didn't match any of these.

提前致谢。

【问题讨论】:

    标签: django url path blogs


    【解决方案1】:

    我猜你的路径中缺少“博客”参数。此外,我始终建议尝试限制允许的字符,因为您完全知道您可以在您的 url 中收到什么。我不知道您是如何导入“detail”的,但您可能希望将其称为“application.views.detail”之类的东西。命名参数确保您以后可以轻松更改参数的顺序。

    我想这样的事情应该可行:

    (r'^blog/(?P<year>([0-9]{4}))/(?P<month>\d{1,2})/(?P<path>[a-zA-Z0-9-]+)/$', 'application.views.detail'),
    

    否则,我建议检查您创建的 url 是否与 Django 提供的带有错误消息的 url 匹配。

    【讨论】:

    • 13. ^blog/ ^blog/(?P([0-9]{4}))/(?P\d{1,2})/(?P[a-zA- Z0-9-]+)/$
    • 当前 URL,blog/2012/6/dasdf/,与其中任何一个都不匹配。
    • 我不需要 blog 参数,因为它是通过主 url conf 和我正在使用的应用程序添加的。问题是没有它也会出错。
    • 你使用的是 Django 开发服务器吗?您是否尝试将{4}{1,2} 替换为+?我建议您尝试将您的 url 缩短为 /year/ 并尝试是否适用于 /blog/2012/。如果是这样,那么尝试重建您的网址,直到它失败。你知道你的错误在哪里。
    • 我按照你说的做了尝试,最终这个 (r'^([0-9]{4}/\d{1,2})/.*/$', detail)工作。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-07
    • 2022-11-22
    • 2011-08-09
    • 2011-10-11
    • 1970-01-01
    相关资源
    最近更新 更多