静态文件配置 静态文件动态解析
1 新建static文件 将静态文件拖进来,js,css这些静态文件
2 需要在setting中配置
在setting.py中
# 静态文件配置相关
STATIC_URL = '/static/'
STATICFILES_DIRS=[ os.path.join(BASE_DIR,'static'), ]
解释:
STATIC_URL = '/static/'#这个static类似于访问static静态文件的令牌
如果这里改成xxx那么我们html引用时也需要改成/xxx/bootstrap-3.3.7-dist/js/bootstrap.min.js才能与令牌符合
#如果你想要访问静态文件 就必须以static开头
# 再配一个STATICFILES_DIRS=列表(列表内写路径),单词一个字母都不能错 #静态文件配置 手动配置 变量名需要全大写 #将static的路径拼接出来了
/static/bootstrap-3.3.7-dist/js/bootstrap.min.js
一旦是以static开头的符合static,我就允许你去下面这些路径里面一个一个找(从上往下一个一个查找,都没有才报错)
STATICFILES_DIRS=[ os.path.join(BASE_DIR,'static'),
os.path.join(BASE_DIR,'static'),
os.path.join(BASE_DIR,'static'),
]
是一个列表 中间可以有多个拼接路径
-3 在模板中使用
<link rel="stylesheet" href="/static/bootstrap-3.3.7-dist/css/bootstrap.min.css"> <script src="/static/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
静态文件配置前:404
静态文件配置后:200
# 三种方式
第一种:
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css">
第二种:
{% load static %} <link rel="stylesheet" href="{% static 'bootstrap/css/bootstrap.min.css' %}">
第三种:
{% load static %} <link rel="stylesheet" href="{% get_static_prefix %}bootstrap/css/bootstrap.min.css">
# 特殊用法
{% load static %} {% static "images/hi.jpg" as myphoto %} <img src="{{ myphoto }}"></img> {% load static %} {% get_static_prefix as static %} <img src="{{ static }}images/hi.jpg" alt="Hi!" />
http://127.0.0.1:8002/login/?username=zs&password=123
当我们把提交方式改为post,post提交数据时 会出现以下报错,只需要把中间件其中一个注释掉即可(防止csrf防跨站请求伪造)
去除缓存
意思是只有右键检查 浏览器就不会有缓存了,重新加载资源
版本不同位置不同 这里我们举例两种:
当你在写django项目时,可能会出现代码修改了但是前端页面没有变化的情况
可能是: 1.你一个端口开了好几个django项目 一直在跑的其实的第一个django项目 2.浏览器缓存的问题 setting network disable cache
静态文件动态解析:在html中
{% load static %}
<link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
<scrip src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></scrip>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南