使用path或者是re_path的后,在route中均可以包含参数,而有时候想指定默认的参数,这时候能够经过如下方式来完成。示例代码以下:django
from django.urls import path from . import views 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. ...
当在访问blog/的时候,由于没有传递num参数,因此会匹配到第一个url,这时候就执行view.page这个视图函数,而在page函数中,又有num=1这个默认参数。所以这时候就能够不用传递参数。而若是访问blog/1的时候,由于在传递参数的时候传递了num,所以会匹配到第二个url,这时候也会执行views.page,而后把传递进来的参数传给page函数中的num。app