You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一目录下friends.html无法加载friends.js,homepage.html可正常访问

解决Django静态文件加载404错误的方案

错误提示里的请求路径是http://127.0.0.1:8000/homepage/static/js/friends.js,这说明你在friends.html里用的相对路径../static/js/friends.js,在当前页面URL(比如/friends/)下被解析成了基于/homepage/的路径,但实际静态文件是部署在根路径/static/下的,所以找不到文件。

核心问题是:你用相对路径引用静态JS文件,但friends页面和homepage的URL路由层级不同,导致相对路径解析出来的地址不对。homepage能正常加载只是巧合——它的URL层级刚好让相对路径命中了正确位置。

修复步骤

直接沿用你加载CSS文件的方式,用Django的{% static %}模板标签生成静态文件的绝对路径,不要用相对路径。

修改friends.html里的script部分:
原来的代码:

<script src="../../static/js/jQuery.js"></script>
<script src="../static/js/friends.js"></script>

替换为:

<script src="{% static 'js/jQuery.js' %}"></script>
<script src="{% static 'js/friends.js' %}"></script>

这样不管当前页面的URL是什么,Django都会自动生成正确的静态文件路径(比如/static/js/friends.js),彻底避免相对路径带来的解析错误。

额外检查

确保你的settings.py里STATIC_URL配置为/static/(Django默认就是这个配置),如果有自定义配置,{% static %}标签会自动适配。

内容的提问来源于stack exchange,提问作者Caden The Yak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 10:27:38