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

Tag filter field for filter forms

This commit is contained in:
Saria Hajjar
2020-01-13 20:16:13 +00:00
parent a8d9fe799b
commit 2f28dec891
7 changed files with 101 additions and 7 deletions

View File

@ -23,7 +23,8 @@ from utilities.forms import (
APISelect, APISelectMultiple, add_blank_choice, ArrayFieldSelectMultiple, BootstrapMixin, BulkEditForm,
BulkEditNullBooleanSelect, ChainedFieldsMixin, ChainedModelChoiceField, ColorSelect, CommentField, ComponentForm,
ConfirmationForm, CSVChoiceField, ExpandableNameField, FilterChoiceField, FlexibleModelChoiceField, JSONField,
SelectWithPK, SmallTextarea, SlugField, StaticSelect2, StaticSelect2Multiple, BOOLEAN_WITH_BLANK_CHOICES
SelectWithPK, SmallTextarea, SlugField, StaticSelect2, StaticSelect2Multiple, TagFilterField,
BOOLEAN_WITH_BLANK_CHOICES
)
from virtualization.models import Cluster, ClusterGroup
from .constants import *
@ -335,6 +336,10 @@ class SiteFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldFilterForm):
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Rack groups
@ -713,6 +718,10 @@ class RackFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldFilterForm):
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Rack elevations
@ -1005,6 +1014,10 @@ class DeviceTypeFilterForm(BootstrapMixin, CustomFieldFilterForm):
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Device component templates
@ -1947,6 +1960,10 @@ class DeviceFilterForm(BootstrapMixin, LocalConfigContextFilterForm, TenancyFilt
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Bulk device component creation
@ -3405,6 +3422,10 @@ class InventoryItemFilterForm(BootstrapMixin, forms.Form):
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Virtual chassis
@ -3591,6 +3612,10 @@ class VirtualChassisFilterForm(BootstrapMixin, CustomFieldFilterForm):
)
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)
#
# Power panels
@ -3967,3 +3992,7 @@ class PowerFeedFilterForm(BootstrapMixin, CustomFieldFilterForm):
max_utilization = forms.IntegerField(
required=False
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['tag'] = TagFilterField(self.model)