在开发环境中,我希望使用应用程序目录中的静态文件。
#settings.py
SITE_ROOT = os.path.dirname(os.path.realpath(__file__))
STATIC_ROOT = (os.path.join(SITE_ROOT, 'static_files/'))
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(SITE_ROOT, 'static/'),
)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
TEMPLATE_CONTEXT_PROCESSORS = (
#...
'django.core.context_processors.static',
#...
)
INSTALLED_APPS = (
#...
'django.contrib.staticfiles',
#...
)
如果位于/static/css/file.css
,我可以找到我的静态文件,但如果在an_app/static/css/file.css
,我就找不到。
好的,我发现了问题,我做了一个问题中看不到的疏忽。我在static/js
、static/flash
、static/css
、static/images
中搜索,并将文件直接放入app/static
中,因此没有找到它们。
检查STATIC_ROOT和STATICILES_DIRS的值。在设置文件中添加打印。