我以前使用django-pipeline 1.2.6,它从来没有找到静态文件的问题。升级后,它现在找不到静态文件的位置。不确定是什么问题,但我可能只是遗漏了一些东西。
我收到了这个错误:
ValueError: The file 'stylesheets/application.css.sass' could not be found with <pipeline.storage.PipelineFinderStorage object at 0x106e8b290>.
我正在使用django 1.4。以下是我的设置:
path = lambda *a: os.path.join(ROOT_PATH, *a)
MEDIA_ROOT = ''
MEDIA_URL = ''
STATIC_ROOT = path('assets/')
STATIC_URL = 'assets/'
STATICFILES_DIRS = ()
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# 'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
INSTALLED_APPS = (
# ...
'django.contrib.staticfiles',
'pipeline',
'app',
)
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage'
PIPELINE_COMPILERS = (
'pipeline.compilers.sass.SASSCompiler',
'pipeline.compilers.coffee.CoffeeScriptCompiler',
)
PIPELINE_CSS = {
'application': {
'source_filenames': (
'stylesheets/application.css.sass',
),
'output_filename': 'stylesheets/application.css',
},
}
PIPELINE_JS = {
'application': {
'source_filenames': (
'javascripts/application.js.coffee',
),
'output_filename': 'javascripts/application.js',
}
}
请帮忙。
有趣的花絮:如果我完全删除了PIPELINE_CSS,它也找不到javascripts / application.js.coffee。
另一件有趣的事情,无论我使用哪种版本的django-pipeline,我都会得到以下内容:
$ python manage.py findstatic stylesheets/application.css.sass
No matching file found for 'stylesheets/application.css.sass'.
我做错了什么?
答案 0 :(得分:3)
如果你有这个,无论你使用什么版本的管道:
$ python manage.py findstatic stylesheets/application.css.sass
No matching file found for 'stylesheets/application.css.sass'.
这只是意味着django-staticfiles配置错误,一旦你弄明白,管道应该正常工作。
你在哪里存储静态文件?在每个应用程序的static
目录中,还是在整个项目中?