如果使用了第一个匹配项,那么将按照什么顺序检查url,但解析后会立即显示带有/ <int:pk>的相同url?

时间:2019-04-27 03:10:15

标签: django django-rest-framework django-2.2

来自Django Project文档: https://docs.djangoproject.com/en/2.2/topics/http/urls/

  

Django按顺序运行每个URL模式,并在与请求的URL匹配的第一个URL模式处停止。

     

...按顺序测试模式,第一个是第一个通过的测试。随意利用此顺序插入特殊情况。

如果是这种情况,那么为什么网址“ blog / page4”与第一个路径“ blog /”不匹配?网址解析器是否继续从列表中向下查看是否还有其他匹配项,如果不匹配则返回顶部?

urlpatterns = [
    path('blog/', views.page),
    path('blog/page<int:num>/', views.page),
]

# View (in blog/views.py)
def page(request, num=1):
    # Output the appropriate page of blog entries, according to num.

我可以看到它有效,但我不理解文档中的解释。我在谷歌周围寻找答案,得到的只是djangoproject网站上的相同文档。

0 个答案:

没有答案