Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #13828 -- DRY'd up the dictsort(reversed) filters, will speed t…

…hem up as well.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15316 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 561af6417e1c8232904b726fb0219cc0b7c2e71d 1 parent b4bf635
@alex alex authored
Showing with 2 additions and 9 deletions.
  1. +2 −9 django/template/defaultfilters.py
View
11 django/template/defaultfilters.py
@@ -460,10 +460,7 @@ def dictsort(value, arg):
Takes a list of dicts, returns that list sorted by the property given in
the argument.
"""
- var_resolve = Variable(arg).resolve
- decorated = [(var_resolve(item), item) for item in value]
- decorated.sort()
- return [item[1] for item in decorated]
+ return sorted(value, key=Variable(arg).resolve)
dictsort.is_safe = False
def dictsortreversed(value, arg):
@@ -471,11 +468,7 @@ def dictsortreversed(value, arg):
Takes a list of dicts, returns that list sorted in reverse order by the
property given in the argument.
"""
- var_resolve = Variable(arg).resolve
- decorated = [(var_resolve(item), item) for item in value]
- decorated.sort()
- decorated.reverse()
- return [item[1] for item in decorated]
+ return sorted(value, key=Variable(arg).resolve, reverse=True)
dictsortreversed.is_safe = False
def first(value):
Please sign in to comment.
Something went wrong with that request. Please try again.