diff --git a/adminsortable/admin.py b/adminsortable/admin.py index 76d0ce0..9e23991 100644 --- a/adminsortable/admin.py +++ b/adminsortable/admin.py @@ -116,7 +116,6 @@ class SortableAdmin(SortableAdminBase, ModelAdmin): """ # get sort group index from querystring if present sort_filter_index = request.GET.get('sort_filter') - filter_expression = request.GET.get('filter_expression') filters = {} @@ -126,10 +125,9 @@ class SortableAdmin(SortableAdminBase, ModelAdmin): except (IndexError, ValueError): pass - if filter_expression: - filters.update( - dict([filter_expression.split('=')]) - ) + # apply any filters via the querystring + for k, v in request.GET.items(): + filters.update({ k: v }) # Apply any sort filters to create a subset of sortable objects return self.get_queryset(request).filter(**filters) diff --git a/adminsortable/templates/adminsortable/change_list_with_sort_link.html b/adminsortable/templates/adminsortable/change_list_with_sort_link.html index 97885ae..430c646 100644 --- a/adminsortable/templates/adminsortable/change_list_with_sort_link.html +++ b/adminsortable/templates/adminsortable/change_list_with_sort_link.html @@ -10,7 +10,7 @@ var urlParts = url.split('?'); if (urlParts.length === 2 && urlParts[1].substr(0, 2) !== 'q=') { - $('a#change-order').attr('href', './sort/?filter_expression=' + urlParts[1]); + $('a#change-order').attr('href', './sort/?' + urlParts[1]); } }); })(django.jQuery);