From 2b2f67090940413055ec26114fa481a1a3860fed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Sun, 12 Jan 2014 10:51:23 +0100 Subject: [PATCH] Simplified the by username ordering filter on issues --- greenmine/projects/issues/api.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/greenmine/projects/issues/api.py b/greenmine/projects/issues/api.py index 4da11165..e0fa74c9 100644 --- a/greenmine/projects/issues/api.py +++ b/greenmine/projects/issues/api.py @@ -56,15 +56,12 @@ class IssuesFilter(filters.FilterBackend): class IssuesOrdering(filters.FilterBackend): def filter_queryset(self, request, queryset, view): - if 'order_by' in request.QUERY_PARAMS: - if request.QUERY_PARAMS['order_by'] == 'owner': - queryset = queryset.order_by('owner__first_name', 'owner__last_name') - elif request.QUERY_PARAMS['order_by'] == '-owner': - queryset = queryset.order_by('-owner__first_name', '-owner__last_name') - elif request.QUERY_PARAMS['order_by'] == 'assigned_to': - queryset = queryset.order_by('assigned_to__first_name', 'assigned_to__last_name') - elif request.QUERY_PARAMS['order_by'] == '-assigned_to': - queryset = queryset.order_by('-assigned_to__first_name', '-assigned_to__last_name') + order_by = request.QUERY_PARAMS.get('order_by', None) + if order_by in ['owner', '-owner', 'assigend_to', '-assigend_to']: + return queryset.order_by( + '{}__first_name'.format(order_by), + '{}__last_name'.format(order_by) + ) return queryset