1.前言
假如我們要打開這兩個博客園地址:【https://www.cnblogs.com/xiamen-momo/archive/2020/11.html】、【https://www.cnblogs.com/xiamen-momo/archive/2020/12.html】,會發現這兩個地址的最大差別就是時間參數的值是動態的(年和月的值是動態的)。
那麼,如果我們想要獲取地址【https://www.cnblogs.com/xiamen-momo/archive/2020/11.html】裏面的【2018】和【11】這兩個值,就涉及到url參數值的獲取了!
2.獲取url裏的參數和對應參數值
結合我們本地diango項目【helloworld】,比如我們想要獲取地址【http://127.0.0.1:8000/archive/2020/10.html】裏面的【2020】和【10】這兩個值。
那麼:
2.1.第一步:在【helloworld/hello/views.py】新增一個視圖函數【home】,具體數據如圖所示。
2.2.第二步:在【helloworld/helloworld/urls.py】新增一個path匹配規則,具體數據如圖所示。
2.3.第三步:重新熱啓動django項目【helloworld】服務後,訪問該地址【http://127.0.0.1:8000/archive/2020/10.html】,會得到正確的頁面內容。
2.4.容易引起程序報錯的場景:要注意path匹配規則裏的參數名和對應視圖函數裏的參數名要每個都保持一致,不然腳本被調用後的執行過程中會報錯導致程序中斷。
舉個實際反例:假如我現在把path匹配規則裏的【year】改成【years】後,重新熱啓動django項目【helloworld】服務後,重新訪問該地址【http://127.0.0.1:8000/archive/2020/10.html】,會返回給我這個報錯頁面!