summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJannis Leidel <jannis@leidel.info>2011-02-01 20:10:29 +0000
committerJannis Leidel <jannis@leidel.info>2011-02-01 20:10:29 +0000
commit3bff7ed34c0bf29a0fada05cfaf729aaec7cea6d (patch)
tree405622ab44747c71b81f5ee7585d298ac953ffa0
parent5cd561280844865182277ef49070e75ad5ec881e (diff)
Preserve order of STATICFILES_DIRS locations in FileSystemFinder.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15389 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/staticfiles/finders.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/django/contrib/staticfiles/finders.py b/django/contrib/staticfiles/finders.py
index c3b0eb6f07..7394e600f3 100644
--- a/django/contrib/staticfiles/finders.py
+++ b/django/contrib/staticfiles/finders.py
@@ -42,10 +42,10 @@ class FileSystemFinder(BaseFinder):
to locate files.
"""
def __init__(self, apps=None, *args, **kwargs):
+ # List of locations with static files
+ self.locations = []
# Maps dir paths to an appropriate storage instance
self.storages = SortedDict()
- # Set of locations with static files
- self.locations = set()
if not isinstance(settings.STATICFILES_DIRS, (list, tuple)):
raise ImproperlyConfigured(
"Your STATICFILES_DIRS setting is not a tuple or list; "
@@ -59,13 +59,12 @@ class FileSystemFinder(BaseFinder):
raise ImproperlyConfigured(
"The STATICFILES_DIRS setting should "
"not contain the STATIC_ROOT setting")
- self.locations.add((prefix, root))
- # Don't initialize multiple storages for the same location
+ if (prefix, root) not in self.locations:
+ self.locations.append((prefix, root))
for prefix, root in self.locations:
filesystem_storage = FileSystemStorage(location=root)
filesystem_storage.prefix = prefix
self.storages[root] = filesystem_storage
-
super(FileSystemFinder, self).__init__(*args, **kwargs)
def find(self, path, all=False):