【问题标题】:Url pattern regex in djangodjango 中的 URL 模式正则表达式
【发布时间】:2015-02-01 09:33:33
【问题描述】:

这是一个基本问题,但我无法在文档中找到答案:

假设我有一个类似的网址:

http://example.com/part1/part2

我有:

urlpatterns = patterns('',
    # Examples:
    url(r'^$', 'xxx', name='yyy'),

)

^ 和 $ 之间的正则表达式尝试匹配上面 url 字符串的哪一部分?

我已经阅读了许多资料和文档,包括:

【问题讨论】:

    标签: python regex django django-urls


    【解决方案1】:

    这点在documentation里写的很清楚:

    URLconf 搜索请求的 URL,就像普通的 Python 细绳。这不包括 GET 或 POST 参数,或域 名字。

    例如,在对http://www.example.com/myapp/ 的请求中, URLconf 将查找 myapp/。

    在对http://www.example.com/myapp/?page=3 的请求中,URLconf 将 寻找 myapp/。

    URLconf 不查看请求方法。换句话说,所有 请求方法——POST、GET、HEAD 等——将被路由到同一个 同一个 URL 的函数。

    在您的情况下,将搜索 part1/part2 字符串。

    【讨论】:

    • 感谢 Alecxe 在文档中指出该解释的位置。我有一个后续问题。在解释中它指出:“URLconf 搜索请求的 URL”,URL 是否仅指“part1/part2”我认为 URL 指的是“example.com/part1/part2”
    • @user61629 欢迎您。域名未包含在检查中,请参阅This does not include GET or POST parameters, or the domain name。
    • 谢谢,所以据我了解,如果 django 将 URL 定义为 "part1/part2" ,它叫什么 "example.com/part1/part2" ?
    • @user61629 好吧,他们的 URL 肯定是整个字符串http://example.com/part1/part2,part1/part2 可以称为“路径”,但它只是 URL 的一部分。
    • 感谢您的帮助。不过我觉得这有点令人困惑,尤其是对于初学者。
    猜你喜欢
    • 1970-01-01
    • 2011-03-22
    • 2013-07-26
    • 2014-07-08
    • 1970-01-01
    • 2014-10-23
    • 2013-07-22
    • 1970-01-01
    相关资源
    最近更新 更多