【发布时间】:2026-02-06 18:10:02
【问题描述】:
Django 2 中的静态文件有问题。
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATE_DIR = os.path.join(BASE_DIR, "templates")
STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR + '/static/'
STATICFILES_DIR = [
(BASE_DIR + "static/"),
]
STATICFILES_FINDERS = [
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
我的静态结构如下所示
我得到 404 的静态数据。尝试了不同的东西,但没有成功。顺便说一句,collectstatic 已经执行了。另一件事是当我在静态文件夹中进行更改时,collectstatic 没有收集任何内容。它说“未修改”。
我是 Django 的新手。感谢您的帮助。
更新 2:
设置是这样的
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static' )
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static_files')
]
STATICFILES_FINDERS = [
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
当我尝试收集静态时,没有任何变化。好像没有收藏。并且 404 自然返回静态,因为它没有收集。
【问题讨论】:
-
您是否在 settings.py 的上下文处理器列表中设置了 django.core.context_processors.static?
-
没有。默认没有 TEMPLATE_CONTEXT_PROCESSORS。
标签: python django django-staticfiles django-settings