Skip to content

Commit 467fa5a

Browse files
committed
Add q filters for Token and ObjectPermission filter sets
1 parent 50f283c commit 467fa5a

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

netbox/users/filtersets.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,20 @@ class Meta:
9999
model = Token
100100
fields = ['id', 'key', 'write_enabled']
101101

102+
def search(self, queryset, name, value):
103+
if not value.strip():
104+
return queryset
105+
return queryset.filter(
106+
Q(user__username__icontains=value) |
107+
Q(description__icontains=value)
108+
)
109+
102110

103111
class ObjectPermissionFilterSet(BaseFilterSet):
112+
q = django_filters.CharFilter(
113+
method='search',
114+
label='Search',
115+
)
104116
user_id = django_filters.ModelMultipleChoiceFilter(
105117
field_name='users',
106118
queryset=User.objects.all(),
@@ -127,3 +139,11 @@ class ObjectPermissionFilterSet(BaseFilterSet):
127139
class Meta:
128140
model = ObjectPermission
129141
fields = ['id', 'name', 'enabled', 'object_types']
142+
143+
def search(self, queryset, name, value):
144+
if not value.strip():
145+
return queryset
146+
return queryset.filter(
147+
Q(name__icontains=value) |
148+
Q(description__icontains=value)
149+
)

0 commit comments

Comments
 (0)