Fixed #17806 -- Fixed off-by-n error in the CachedStaticFilesStorage that prevented it from finding files in nested directories. Many thanks to lpetre.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@17622 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jannis Leidel 2012-03-02 11:29:14 +00:00
parent 746987f916
commit e88a65660f
3 changed files with 6 additions and 2 deletions

View File

@ -160,7 +160,7 @@ class CachedFilesMixin(object):
if sub_level:
if sub_level == 1:
parent_level -= 1
start, end = parent_level, sub_level - 1
start, end = parent_level, 1
else:
start, end = 1, sub_level - 1
joined_result = '/'.join(name_parts[:-start] + url_parts[end:])

View File

@ -1 +1,4 @@
@import url("/static/cached/styles.css");
body {
background: #d3d6d8 url(/static/cached/img/relative.png);
}

View File

@ -416,11 +416,12 @@ class TestCollectionCachedStorage(BaseCollectionTestCase,
def test_template_tag_absolute(self):
relpath = self.cached_file_path("cached/absolute.css")
self.assertEqual(relpath, "cached/absolute.cc80cb5e2eb1.css")
self.assertEqual(relpath, "cached/absolute.23f087ad823a.css")
with storage.staticfiles_storage.open(relpath) as relfile:
content = relfile.read()
self.assertNotIn("/static/cached/styles.css", content)
self.assertIn("/static/cached/styles.93b1147e8552.css", content)
self.assertIn('/static/cached/img/relative.acae32e4532b.png', content)
def test_template_tag_denorm(self):
relpath = self.cached_file_path("cached/denorm.css")