django url反向解析
阿新 • • 發佈:2021-06-20
url反向解析
-
程式碼中出現url得位置
- 模板 html中
<a href='url'>
<form action='url' method=post>
- 檢視函式中302跳轉 HttpResponseRedirect('url')
- 模板 html中
-
URL書寫規範
- 絕對地址
- 相對地址
/page/1
'/'開頭得相對地址,瀏覽器會把當前位址列得協議、ip和埠號加上這個地址,作為最終得訪問地址page/1
沒有'/'開頭得相對地址,瀏覽器會根據url得最後一個'/'之前得內容加上該地址作為最終訪問地址
-
URL反向解析
-
反向解析是指在檢視或模板中,使用path定義得名稱來動態查詢或計算出響應得路由
-
path函式語法
- path(route,views,name='別名')
-
根據path中
name=
關鍵字傳遞引數書給URL確定了一個唯一確定得名字,在模板或檢視中,可以通過這個名字反向推斷出此url資訊 -
在模板中 - 通過url標籤實現地址得反向解析
- {% url '別名' %}
- {% url '別名' '引數值1' '引數值2' %}
-
在檢視函式中, 可呼叫django中reverse方法進行反向解析
from django.url import reverse reverse('別名',args=[],kwargs={}) print(reverse('page',args=[100])) print(reverse('page',kwargs={'name':'小明','age':22}))
-