使用path或者re_path後,在url中都可以包含參數,而有時候想指定預設的參數,可以通過在urls.py中寫兩個url都指向同一個視圖函數。一個帶參數一個不帶參數。同時,在視同函數的參數中設置預設值。這樣,當匹配到不帶參數的url時,就會使用預設值。實例代碼: urls.py 1 from d ...
使用path或者re_path後,在url中都可以包含參數,而有時候想指定預設的參數,可以通過在urls.py中寫兩個url都指向同一個視圖函數。一個帶參數一個不帶參數。同時,在視同函數的參數中設置預設值。
這樣,當匹配到不帶參數的url時,就會使用預設值。
實例代碼:
urls.py
1 from django.urls import path, re_path 2 from app01 import views 3 4 urlpatterns = [ 5 path('book/',views.book,name='book'), 6 path('book/<int:num>/',views.book,name='book') 7 ]
views.py
1 from django.shortcuts import HttpResponse 2 book_list = ['青龍', '白虎', '月牙'] 3 def book(request,num=0): 4 return HttpResponse(book_list[num])
當訪問:http://127.0.0.1:8000/book/時顯示:青龍;
當訪問:http://127.0.0.1:8000/book/1/時顯示:白虎;
當訪問:http://127.0.0.1:8000/book/2/時顯示:月牙;