1
0
mirror of https://github.com/django/django.git synced 2024-12-26 11:06:07 +00:00

Fixed #8217 -- Correctly sort files in FilePathFields on older Python versions. Thanks, bernd and davidb.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@14772 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jannis Leidel 2010-12-02 00:49:15 +00:00
parent 7421f7269e
commit fb391b8b98

View File

@ -867,14 +867,14 @@ class FilePathField(ChoiceField):
self.match_re = re.compile(self.match) self.match_re = re.compile(self.match)
if recursive: if recursive:
for root, dirs, files in os.walk(self.path): for root, dirs, files in sorted(os.walk(self.path)):
for f in files: for f in files:
if self.match is None or self.match_re.search(f): if self.match is None or self.match_re.search(f):
f = os.path.join(root, f) f = os.path.join(root, f)
self.choices.append((f, f.replace(path, "", 1))) self.choices.append((f, f.replace(path, "", 1)))
else: else:
try: try:
for f in os.listdir(self.path): for f in sorted(os.listdir(self.path)):
full_file = os.path.join(self.path, f) full_file = os.path.join(self.path, f)
if os.path.isfile(full_file) and (self.match is None or self.match_re.search(f)): if os.path.isfile(full_file) and (self.match is None or self.match_re.search(f)):
self.choices.append((full_file, f)) self.choices.append((full_file, f))