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

如何在Django项目中连接CSS/JS文件?遇404错误求助

解决Django静态文件404问题的步骤

从你给出的findstatic命令输出能直接定位问题,按以下步骤逐一修正:

1. 修正STATICFILES_DIRS配置

你之前的配置要么指向了不存在的目录(BASE_DIR/static),要么重复添加了app的静态目录,导致Django重复查找资源。Django会自动扫描INSTALLED_APPS中每个app下的static目录,完全不需要把app的static目录手动加到STATICFILES_DIRS里。

把settings中的静态文件配置改成这样:

STATIC_URL = 'static/'
# 如果你没有项目级别的公共static目录,直接注释/删除STATICFILES_DIRS即可
# STATICFILES_DIRS = []

2. 确保DEBUG模式处于开启状态

开发环境下,Django只有在DEBUG = True时,才会通过runserver自动提供静态文件的访问服务。检查settings.py里的DEBUG设置:

DEBUG = True

3. 开发环境无需额外修改urls.py

你当前的urls.py只配置了media的静态映射,这没问题。开发环境下只要DEBUG=True且INSTALLED_APPS包含django.contrib.staticfiles,runserver会自动处理static文件的请求,不需要额外添加static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)。

4. 确认静态文件引用路径正确性

你模板里的引用路径是完全正确的:

{% static 'car_manage/js/jquery-1.10.2.min.js' %}

因为你的文件实际存储路径是car_manage/static/car_manage/js/jquery-1.10.2.min.js,Django会把app下的static目录作为静态资源的搜索根,里面的car_manage子目录是用来避免资源名冲突的命名空间,引用逻辑没问题。

最后验证

执行python manage.py findstatic car_manage/js/jquery-1.10.2.min.js,应该只返回一条正确的文件路径且无警告。随后重启runserver,刷新页面即可正常加载静态资源。

另外你提到去掉CSS的rel="stylesheet"就不报错,这只是浏览器不再发起该CSS文件的请求而已,并非真正解决问题,按上述步骤修正后即可正常保留该参数。

内容的提问来源于stack exchange,提问作者pshpth_ sht

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 16:20:47