feat(virtualization): Add VLAN Translation Policy to Filter Form

Introduces support for VLAN Translation Policies in the Interface
Filter Form.
This commit is contained in:
Martin Hauser 2025-04-15 20:37:12 +02:00
parent 78c5405481
commit 590c4587b1
No known key found for this signature in database

View File

@ -5,7 +5,7 @@ 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
from ipam.models import VRF
from ipam.models import VRF, VLANTranslationPolicy
from netbox.forms import NetBoxModelFilterSetForm
from tenancy.forms import ContactModelFilterForm, TenancyFilterForm
from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES
@ -203,7 +203,7 @@ class VMInterfaceFilterForm(NetBoxModelFilterSetForm):
FieldSet('cluster_id', 'virtual_machine_id', name=_('Virtual Machine')),
FieldSet('enabled', name=_('Attributes')),
FieldSet('vrf_id', 'l2vpn_id', 'mac_address', name=_('Addressing')),
FieldSet('mode', name=_('802.1Q Switching')),
FieldSet('mode', 'vlan_translation_policy_id', name=_('802.1Q Switching')),
)
selector_fields = ('filter_id', 'q', 'virtual_machine_id')
cluster_id = DynamicModelMultipleChoiceField(
@ -245,6 +245,11 @@ class VMInterfaceFilterForm(NetBoxModelFilterSetForm):
required=False,
label=_('802.1Q mode')
)
vlan_translation_policy_id = DynamicModelMultipleChoiceField(
queryset=VLANTranslationPolicy.objects.all(),
required=False,
label=_('VLAN Translation Policy')
)
tag = TagFilterField(model)