Skip to content

Commit c8c4796

Browse files
Merge pull request #6473 from rodvand/develop
Closes #6358: Add search to VLAN group overview.
2 parents a7371c0 + 78b0e50 commit c8c4796

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

netbox/ipam/filtersets.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -536,6 +536,10 @@ def _assigned_to_interface(self, queryset, name, value):
536536

537537

538538
class VLANGroupFilterSet(OrganizationalModelFilterSet):
539+
q = django_filters.CharFilter(
540+
method='search',
541+
label='Search',
542+
)
539543
scope_type = ContentTypeFilter()
540544
region = django_filters.NumberFilter(
541545
method='filter_scope'
@@ -563,6 +567,15 @@ class Meta:
563567
model = VLANGroup
564568
fields = ['id', 'name', 'slug', 'description', 'scope_id']
565569

570+
def search(self, queryset, name, value):
571+
if not value.strip():
572+
return queryset
573+
qs_filter = (
574+
Q(name__icontains=value) |
575+
Q(description__icontains=value)
576+
)
577+
return queryset.filter(qs_filter)
578+
566579
def filter_scope(self, queryset, name, value):
567580
return queryset.filter(
568581
scope_type=ContentType.objects.get(model=name),

netbox/ipam/forms.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1270,6 +1270,10 @@ class Meta:
12701270

12711271

12721272
class VLANGroupFilterForm(BootstrapMixin, forms.Form):
1273+
q = forms.CharField(
1274+
required=False,
1275+
label=_('Search')
1276+
)
12731277
region = DynamicModelMultipleChoiceField(
12741278
queryset=Region.objects.all(),
12751279
required=False,

0 commit comments

Comments
 (0)