静态文件的加载配置:
- 在settings.py中添加静态文件访问地址(默认就有)
- 添加储存静态文件的路径:
STATIC_URL = '/static/' #默认配置
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'files_name'))
加载过程:
直接地址访问,间接地址访问和动态模板访问:
<body>
<img src="http://127.0.0.1:8000/static/picture.png/" width = "200px" height = "200px">
<img src="/static/picture.png" width = "200px" height = "200px">
{% load static %}
<img src="{% static 'picture.png' %}" width = "200px" height = "200px">
</body>
- 前两种访问方式为
/static/image_path
- 动态加载静态文件:
先引入动态文件加载:{% load static %}
然后进行img标签加载静态文件:<img src="{% static 'image_name.xxx'%}" width = "xxx px" height = "xxx px">
加载结果如下所示:
假设将静态文件访问路径设置为:
STATIC_URL = '/statics/' #修改为后面多了个s
然后刷新页面,前两个直接是在模板里把地址写死了,所以不修改的情况下是绝对不会加载出来的,第三个微动态加载,会自动解析成为最新的STATIC_URL,所以仍然会加载出来正确的图片。
测试结果如下:
查看页面源代码:
前两个是被写死在模板里了,但是第三个动态加载静态文件,头地址变化,会随着他变化。
静态文件图片加载过程:
实质是网站加载到<img
标签之后,解读里面的SRC属性,对SRC里面的地址发HTTP请求,其中地址接收到请求后响应回来,浏览器显示出加载的图片资源。