From 70aa3a229b1b24ce7c7f037465fd2f1cbb375168 Mon Sep 17 00:00:00 2001 From: Martin Hauser Date: Sun, 13 Apr 2025 10:34:48 +0200 Subject: [PATCH] feat(virtualization): Add VLAN mode filter to VMInterface Add a field to VMInterfaceFilterSet to filter interfaces by 802.1Q VLAN mode. --- netbox/virtualization/forms/filtersets.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/netbox/virtualization/forms/filtersets.py b/netbox/virtualization/forms/filtersets.py index 2b2d821fe..94304fa72 100644 --- a/netbox/virtualization/forms/filtersets.py +++ b/netbox/virtualization/forms/filtersets.py @@ -1,6 +1,7 @@ from django import forms from django.utils.translation import gettext_lazy as _ +from dcim.choices import * from dcim.models import Device, DeviceRole, Location, Platform, Region, Site, SiteGroup from extras.forms import LocalConfigContextFilterForm from extras.models import ConfigTemplate @@ -201,6 +202,7 @@ class VMInterfaceFilterForm(NetBoxModelFilterSetForm): FieldSet('q', 'filter_id', 'tag'), FieldSet('cluster_id', 'virtual_machine_id', name=_('Virtual Machine')), FieldSet('enabled', 'mac_address', 'vrf_id', 'l2vpn_id', name=_('Attributes')), + FieldSet('mode', name=_('802.1Q Switching')), ) selector_fields = ('filter_id', 'q', 'virtual_machine_id') cluster_id = DynamicModelMultipleChoiceField( @@ -237,6 +239,11 @@ class VMInterfaceFilterForm(NetBoxModelFilterSetForm): required=False, label=_('L2VPN') ) + mode = forms.MultipleChoiceField( + choices=InterfaceModeChoices, + required=False, + label=_('802.1Q mode') + ) tag = TagFilterField(model)