无名分组
单个参数 /name/xxxx/
urls.py
from django.conf.urls import url # path不会写正则表达式 引用url来写url('books/(\d{4})/',test01.views.books_year),或者使用from django.urls import re_pathre_path('books/(\d{4})/',test01.views.books_year),
views.py
def books_year(request,year): # year接收正则匹配到的结果return HttpResponse(year)

多个参数 /name/xxxx/xx/
# 一定要把正则路径匹配多的放到最上面,要不然匹配到第一个就会终止,就不会得到我们想要的结果了url('books/(\d{4})/(\d{2})/', test01.views.books_year_month), # 长的url('books/(\d{4})/',test01.views.books_year), # 短的# 视图def books_year_month(request,year,month):str = year + '-' + monthreturn HttpResponse(str)

有名分组
多个参数 (直接多个参数 单个参数略过) /name/xxxx/xx
# 底下的两个正则表达式匹配的规则一摸一样 都可以实现我的功能,想要用那个就放在最前面。url('books/(?P<year>\d{4})/(?P<month>\d{2})/', test01.views.ym_books_year_month),url('books/(\d{4})/(\d{2})/', test01.views.books_year_month),# 视图def ym_books_year_month(request,month,year):str = year + '-' + monthreturn HttpResponse("有名-" + str)

默认值 (没搞明白)
url('blog/(?P<num>[0-9]+)/',test01.views.page),def page(request,num="1"):return HttpResponse(num)

