Django(part5)--url匹配优先级
生活随笔
收集整理的這篇文章主要介紹了
Django(part5)--url匹配优先级
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學習筆記,僅供參考
url匹配優先級
首先我們看下面這兩段代碼,考慮輸入地址http://127.0.0.1:8000/birthday/1997/9/28,服務器會返回給我們什么頁面:
urls.py
from django.contrib import admin from django.urls import path from . import views from django.urls import re_path #.表示從當前包里導入urlpatterns = [path('admin/', admin.site.urls),re_path(r'year/(\d{4})/', views.year),re_path(r'birthday/(\d{4})/', views.page_birth_year),re_path(r'birthday/(\d{4})/(\d{1,2})/(\d{1,2})/', views.page_birth),]views.py
def year(request, y):print(type(y))html = "輸入年份為:" + yreturn HttpResponse(html)def page_birth(request, year, month, day):html = "生日為:"+year+"年"+month+"月"+day+"日"return HttpResponse(html)def page_birth_year(request, year):html = "出身年份為:"+year+"年"return HttpResponse(html)由于我們的匹配規則是從頭(索引為0)到尾(索引為len(urlpatterns)-1)進行搜索匹配的,所以當我們的url地址匹配到birthday/(\d{4})/時,就已經匹配上了,所以就不會再進行匹配了,也就不會匹配到birthday/(\d{4})/(\d{1,2})/(\d{1,2})/
瀏覽器響應頁面:
總結
以上是生活随笔為你收集整理的Django(part5)--url匹配优先级的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django(part4)--练习及re
- 下一篇: 手机屏幕变滑小妙招