如何在Django中设置静态文件目录

1 投票
1 回答
1381 浏览
提问于 2025-04-18 00:04

我正在尝试让一个已经存在的django应用程序正常运行,但css文件或其他静态文件都没有显示出来。我遇到了这个错误:

"GET /static/css/mycss.css HTTP/1.1" 404 50

在设置中使用了以下值:

DJANGO_ROOT = dirname(dirname(abspath(__file__)))
SITE_ROOT = dirname(DJANGO_ROOT)
STATIC_ROOT = normpath(join(SITE_ROOT, 'assets'))
STATIC_URL = '/static/'

STATICFILES_DIRS = (
    normpath(join(SITE_ROOT, 'static')),
)

这个应用程序里有一个叫“static”的文件夹。它在当前的目录结构中是这样的:

my-django-project > my-django-project > static > css > mycss.css

当我通过localhost访问主页时,我得到了上面的404错误。

我哪里做错了?

1 个回答

0

你需要运行 collectstatic 这个命令,把你应用里的静态文件收集到 STATIC_ROOT 这个地方。

你可以这样运行这个命令:

python managy.py collectstatic

关于静态文件的更多信息,可以在 Django的静态文件文档 中找到。

撰写回答