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}))
-