From 467fa5a84757bb011515356ca498f7c9037dff55 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Fri, 12 Nov 2021 15:30:16 -0500 Subject: [PATCH] Add q filters for Token and ObjectPermission filter sets --- netbox/users/filtersets.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/netbox/users/filtersets.py b/netbox/users/filtersets.py index 80643c1e5..ad296ea25 100644 --- a/netbox/users/filtersets.py +++ b/netbox/users/filtersets.py @@ -99,8 +99,20 @@ class TokenFilterSet(BaseFilterSet): model = Token fields = ['id', 'key', 'write_enabled'] + def search(self, queryset, name, value): + if not value.strip(): + return queryset + return queryset.filter( + Q(user__username__icontains=value) | + Q(description__icontains=value) + ) + class ObjectPermissionFilterSet(BaseFilterSet): + q = django_filters.CharFilter( + method='search', + label='Search', + ) user_id = django_filters.ModelMultipleChoiceFilter( field_name='users', queryset=User.objects.all(), @@ -127,3 +139,11 @@ class ObjectPermissionFilterSet(BaseFilterSet): class Meta: model = ObjectPermission fields = ['id', 'name', 'enabled', 'object_types'] + + def search(self, queryset, name, value): + if not value.strip(): + return queryset + return queryset.filter( + Q(name__icontains=value) | + Q(description__icontains=value) + )