我过去使用django管道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管道,我都会得到以下结果:
$ python manage.py findstatic stylesheets/application.css.sass
No matching file found for stylesheets/application.css.sass .
我做错了什么?