7. url反向解析和静态文件

2022-12-01,,,,

一、代码中url出现的位置
1.模版【html】中
1.<a href='urk'>超链接点击跳转<a/>
2.<form action='url' method='post'>
2.视图函数中 -302重定向跳转 HttpResponseRedirect('url')
 
二、代码中url书写规范及解析规则
1.绝对地址
http://127.0.0.1:8000/page/1
2.相对地址
1. /page/1 开头的相对地址,浏览器会把当前地址栏里的协议、ip和端口加上这个地址,作为最终访问地址,如果当前页面地址栏为http://127.0.0.1:8000/page/3 ,当前相对地址最终结果为 http://127.0.0.1:8000/page/1
 
2.page/1 没有/开头的相对地址,浏览器会根据当前url的最后一个/之前的内容加上该相对地址作为最终访问地址,例如当前页面地址为http://127.0.0.1:8000/topic/detail,则相对地址最终结果为http://127.0.0.1:8000/topic/page/1
 
 
 
三、URL反向解析
1.概念
url反向解析是指在视图或模版中,用path定义的名称来动态查找或计算出相应的内容
path函数语法
path('route',views,name='别名')
根据path中的name=关键字传参给url确定了一个唯一确定的名字,在模版或者视图中,可以通过这个名字反向推断出此url信息
 
2.模版中通过url标签实现地址的反向解析
在需要填写路由地址的地方 使用url标签
语法:
{% url '别名' %} #用空格隔开,url标签后 跟路由的别名,最终路径为该路由地址
{% url '别名' '其他参数' '其他参数' param = 'test ' ...%} #该语法括号内可以跟其他需要传递的参数,以空格隔开
 
3.在视图中使用 -> 调用Django的reverse方法进行解析
导包 from django.urls import reverse
语法:
reverse('别名',args=[],kwargs={})

 
reverse()方法后也可以传递该路由需要的参数
 
 
四、静态文件
如图片、css、js、视频等
 
五、静态文件配置及使用
配置在settings中
1.配置静态文件等访问路径【该配置默认存在】
通过哪个url地址找静态文件
STATIC_URL = '/static/'
说明
指定访问静态文件时时需要通过/static/xxx 或者 http://127.0.0.1:8000/static/xxx
xxx表示具体的静态资源位置
 
2.配置静态文件的存储路径 STATICFILES_DIRS
STATICFILES_DIRS保存的是静态文件在服务器端存储的位置
如果配置项的值是元组,括号结尾一定要加逗号
在项目下创建static静态文件夹,配置中使用op.path.join拼接项目路径与静态文件夹路径,静态配置文件/夹名字可以自定义

匹配逻辑:STATIC_URL配置以/static/开头的文件表明是静态文件,去STATICFILES_DIRS找到静态文件的储存路径进行加载
 
使用语法
1.直接拼接访问路径

2.通过{% static %}标签访问静态文件
1.加载static {% load static %}
2.使用静态资源路径 {% static '要使用的静态资源路径' %}

页面加载一次静态资源文件夹即可,可以写在页面顶部,其他地方可以直接使用标签进行访问
 
 

7. url反向解析和静态文件的相关教程结束。

《7. url反向解析和静态文件.doc》

下载本文的Word格式文档,以方便收藏与打印。