From 1eb931b340315440a01bcde62b6c1d5580ff9df3 Mon Sep 17 00:00:00 2001 From: vanadium23 Date: Wed, 15 Feb 2023 17:29:25 +0400 Subject: [PATCH] add: Allow to define custom ignore list in query params Not all query params can be model fields for querysets. User can define custom ListFilter and get_queryset on it. Provide option to ignore the params for filters on SortableAdmin. --- adminsortable/admin.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/adminsortable/admin.py b/adminsortable/admin.py index 0943186..3ab997f 100644 --- a/adminsortable/admin.py +++ b/adminsortable/admin.py @@ -1,4 +1,3 @@ -import json from urllib.parse import urlencode from django.conf import settings @@ -36,11 +35,17 @@ class SortableAdminBase(object): after_sorting_js_callback_name = None + sortable_ignored_params = () + def get_querystring_filters(self, request): filters = {} for k, v in request.GET.items(): - if k not in IGNORED_PARAMS and k != PAGE_VAR: + if ( + k not in IGNORED_PARAMS + and k != PAGE_VAR + and k not in self.sortable_ignored_params + ): filters[k] = v return filters