1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Closes #11765: Remove StaticSelect & StaticSelectMultiple (#11767)

* Remove StaticSelect, StaticSelectMultiple form widgets

* Tag custom ChoiceField, MultipleChoiceField classes for removal in v3.6
This commit is contained in:
Jeremy Stretch
2023-02-16 10:25:51 -05:00
committed by jeremystretch
parent c73829fe92
commit b9bd96f0c7
30 changed files with 221 additions and 485 deletions

View File

@@ -9,7 +9,7 @@ from netbox.forms import NetBoxModelBulkEditForm
from tenancy.models import Tenant
from utilities.forms import (
add_blank_choice, BulkEditNullBooleanSelect, BulkRenameForm, CommentField, DynamicModelChoiceField,
DynamicModelMultipleChoiceField, StaticSelect
DynamicModelMultipleChoiceField
)
from virtualization.choices import *
from virtualization.models import *
@@ -62,8 +62,7 @@ class ClusterBulkEditForm(NetBoxModelBulkEditForm):
status = forms.ChoiceField(
choices=add_blank_choice(ClusterStatusChoices),
required=False,
initial='',
widget=StaticSelect()
initial=''
)
tenant = DynamicModelChoiceField(
queryset=Tenant.objects.all(),
@@ -109,7 +108,6 @@ class VirtualMachineBulkEditForm(NetBoxModelBulkEditForm):
choices=add_blank_choice(VirtualMachineStatusChoices),
required=False,
initial='',
widget=StaticSelect(),
)
site = DynamicModelChoiceField(
queryset=Site.objects.all(),
@@ -208,8 +206,7 @@ class VMInterfaceBulkEditForm(NetBoxModelBulkEditForm):
)
mode = forms.ChoiceField(
choices=add_blank_choice(InterfaceModeChoices),
required=False,
widget=StaticSelect()
required=False
)
vlan_group = DynamicModelChoiceField(
queryset=VLANGroup.objects.all(),

View File

@@ -7,7 +7,7 @@ from ipam.models import L2VPN, VRF
from netbox.forms import NetBoxModelFilterSetForm
from tenancy.forms import ContactModelFilterForm, TenancyFilterForm
from utilities.forms import (
DynamicModelMultipleChoiceField, MultipleChoiceField, StaticSelect, TagFilterField, BOOLEAN_WITH_BLANK_CHOICES,
DynamicModelMultipleChoiceField, TagFilterField, BOOLEAN_WITH_BLANK_CHOICES,
)
from virtualization.choices import *
from virtualization.models import *
@@ -54,7 +54,7 @@ class ClusterFilterForm(TenancyFilterForm, ContactModelFilterForm, NetBoxModelFi
required=False,
label=_('Region')
)
status = MultipleChoiceField(
status = forms.MultipleChoiceField(
choices=ClusterStatusChoices,
required=False
)
@@ -148,7 +148,7 @@ class VirtualMachineFilterForm(
},
label=_('Role')
)
status = MultipleChoiceField(
status = forms.MultipleChoiceField(
choices=VirtualMachineStatusChoices,
required=False
)
@@ -165,7 +165,7 @@ class VirtualMachineFilterForm(
has_primary_ip = forms.NullBooleanField(
required=False,
label=_('Has a primary IP'),
widget=StaticSelect(
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
)
)
@@ -194,7 +194,7 @@ class VMInterfaceFilterForm(NetBoxModelFilterSetForm):
)
enabled = forms.NullBooleanField(
required=False,
widget=StaticSelect(
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
)
)

View File

@@ -11,7 +11,7 @@ from netbox.forms import NetBoxModelForm
from tenancy.forms import TenancyForm
from utilities.forms import (
BootstrapMixin, CommentField, ConfirmationForm, DynamicModelChoiceField, DynamicModelMultipleChoiceField,
JSONField, SlugField, StaticSelect,
JSONField, SlugField,
)
from virtualization.models import *
@@ -102,9 +102,6 @@ class ClusterForm(TenancyForm, NetBoxModelForm):
'name', 'type', 'group', 'status', 'tenant', 'region', 'site_group', 'site', 'description', 'comments',
'tags',
)
widgets = {
'status': StaticSelect(),
}
class ClusterAddDevicesForm(BootstrapMixin, forms.Form):
@@ -244,11 +241,6 @@ class VirtualMachineForm(TenancyForm, NetBoxModelForm):
'local_context_data': _("Local config context data overwrites all sources contexts in the final rendered "
"config context"),
}
widgets = {
"status": StaticSelect(),
'primary_ip4': StaticSelect(),
'primary_ip6': StaticSelect(),
}
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
@@ -354,9 +346,6 @@ class VMInterfaceForm(InterfaceCommonForm, NetBoxModelForm):
'virtual_machine', 'name', 'parent', 'bridge', 'enabled', 'mac_address', 'mtu', 'description', 'mode',
'vlan_group', 'untagged_vlan', 'tagged_vlans', 'vrf', 'tags',
]
widgets = {
'mode': StaticSelect()
}
labels = {
'mode': '802.1Q Mode',
}