1、代码中URL可以出现的位置
一个是在HTML模板中,一个是在视图函数中:
1、模板【HTML】中
(1) <a href='URL'>超链接</a> 点击后页面跳转至URL
(2) <form action='URL' method='post'> form表单中的数据,用post方法提交至URL
2、视图函数中
(1)302跳转 HttpResponseRedirect(URL) 将用户地址栏中的地址跳转到URL
2、代码中URL书写规范
(1)绝对地址
eg: http://127.0.0.1:8000/page/1
(2)相对地址
- ‘/’ 开头的相对地址 eg: ‘/page/3’
浏览器会把当前地址栏里的协议、Ip、端口加上这个地址,作为最终访问地址。
例如:当前页面地址为:http://127.0.0.1:8000/page/1; 相对地址为 ‘/page/3’ ;则最终访问地址为:http://127.0.0.1:8000 + /page/3 - 不带 ‘/’ 开头的相对地址 eg: ‘page/3’
浏览器会根据当前URL的最后一个/之前的内容,加上该相对地址作为最终访问地址。
例如:当前页面地址为:http://127.0.0.1:8000/topic/detail; 相对地址为 ‘page/3’ ;则最终访问地址为:http://127.0.0.1:8000/topic/ + /page/3
3、URL反向解析
(1)定义:
URL反向解析是指在视图或模板中,用path定义的名称来动态查找或计算出相应的路由。
path函数语法:
path(route, views, name=‘别名’)
- 根据path中的关键字name传参给URL确定了唯一确定的名字,在模板或视图中,可以通过这个名字反向推断出此URL信息。从而避免了在模板或视图中写绝对或相对路径。
(2)使用方式
- 模板中–通过URL标签实现地址的反向解析
{
% url '别名'%}
{
% url '别名'% '参数值1' '参数值2'}
eg:
{
% url 'pagen' '100' %}
{
% u