Explorar o código

#6497: Add missing tag fields to filter forms

jeremystretch %!s(int64=4) %!d(string=hai) anos
pai
achega
c06b3374ce

+ 1 - 0
netbox/circuits/filtersets.py

@@ -111,6 +111,7 @@ class ProviderNetworkFilterSet(PrimaryModelFilterSet):
 
 
 class CircuitTypeFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = CircuitType

+ 1 - 3
netbox/circuits/forms/filtersets.py

@@ -79,14 +79,12 @@ class ProviderNetworkFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
 
 class CircuitTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = CircuitType
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):

+ 7 - 0
netbox/dcim/filtersets.py

@@ -72,6 +72,7 @@ class RegionFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Parent region (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = Region
@@ -89,6 +90,7 @@ class SiteGroupFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Parent site group (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = SiteGroup
@@ -208,6 +210,7 @@ class LocationFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Location (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = Location
@@ -223,6 +226,7 @@ class LocationFilterSet(OrganizationalModelFilterSet):
 
 
 class RackRoleFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = RackRole
@@ -388,6 +392,7 @@ class RackReservationFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
 
 
 class ManufacturerFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = Manufacturer
@@ -570,6 +575,7 @@ class DeviceBayTemplateFilterSet(ChangeLoggedModelFilterSet, DeviceTypeComponent
 
 
 class DeviceRoleFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = DeviceRole
@@ -588,6 +594,7 @@ class PlatformFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Manufacturer (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = Platform

+ 7 - 17
netbox/dcim/forms/filtersets.py

@@ -106,10 +106,6 @@ class DeviceComponentFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
 
 class RegionFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = Region
-    field_groups = [
-        ['q'],
-        ['parent_id'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
@@ -121,14 +117,11 @@ class RegionFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Parent region'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class SiteGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = SiteGroup
-    field_groups = [
-        ['q'],
-        ['parent_id'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
@@ -140,6 +133,7 @@ class SiteGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Parent group'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class SiteFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):
@@ -219,18 +213,17 @@ class LocationFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilt
         label=_('Parent'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class RackRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = RackRole
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class RackFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):
@@ -371,14 +364,12 @@ class RackReservationFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldMo
 
 class ManufacturerFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = Manufacturer
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class DeviceTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
@@ -456,14 +447,12 @@ class DeviceTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
 
 class DeviceRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = DeviceRole
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class PlatformFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
@@ -479,6 +468,7 @@ class PlatformFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Manufacturer'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class DeviceFilterForm(BootstrapMixin, LocalConfigContextFilterForm, TenancyFilterForm, CustomFieldModelFilterForm):

+ 3 - 0
netbox/ipam/filtersets.py

@@ -118,6 +118,7 @@ class RouteTargetFilterSet(PrimaryModelFilterSet, TenancyFilterSet):
 
 
 class RIRFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = RIR
@@ -179,6 +180,7 @@ class RoleFilterSet(OrganizationalModelFilterSet):
         method='search',
         label='Search',
     )
+    tag = TagFilter()
 
     class Meta:
         model = Role
@@ -636,6 +638,7 @@ class VLANGroupFilterSet(OrganizationalModelFilterSet):
     cluster = django_filters.NumberFilter(
         method='filter_scope'
     )
+    tag = TagFilter()
 
     class Meta:
         model = VLANGroup

+ 4 - 8
netbox/ipam/forms/filtersets.py

@@ -91,10 +91,6 @@ class RouteTargetFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelF
 
 class RIRFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = RIR
-    field_groups = [
-        ['q'],
-        ['is_private'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
@@ -107,6 +103,7 @@ class RIRFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
             choices=BOOLEAN_WITH_BLANK_CHOICES
         )
     )
+    tag = TagFilterField(model)
 
 
 class AggregateFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):
@@ -138,14 +135,12 @@ class AggregateFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFil
 
 class RoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = Role
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class PrefixFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):
@@ -363,7 +358,7 @@ class IPAddressFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFil
 
 class VLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     field_groups = [
-        ['q'],
+        ['q', 'tag'],
         ['region', 'sitegroup', 'site', 'location', 'rack']
     ]
     model = VLANGroup
@@ -402,6 +397,7 @@ class VLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Rack'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class VLANFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):

+ 3 - 0
netbox/tenancy/filtersets.py

@@ -33,6 +33,7 @@ class TenantGroupFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Tenant group (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = TenantGroup
@@ -118,6 +119,7 @@ class ContactGroupFilterSet(OrganizationalModelFilterSet):
         to_field_name='slug',
         label='Contact group (slug)',
     )
+    tag = TagFilter()
 
     class Meta:
         model = ContactGroup
@@ -125,6 +127,7 @@ class ContactGroupFilterSet(OrganizationalModelFilterSet):
 
 
 class ContactRoleFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = ContactRole

+ 3 - 3
netbox/tenancy/forms/filtersets.py

@@ -31,6 +31,7 @@ class TenantGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Parent group'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class TenantFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
@@ -71,18 +72,17 @@ class ContactGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Parent group'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class ContactRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = ContactRole
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class ContactFilterForm(BootstrapMixin, CustomFieldModelFilterForm):

+ 2 - 0
netbox/virtualization/filtersets.py

@@ -20,6 +20,7 @@ __all__ = (
 
 
 class ClusterTypeFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = ClusterType
@@ -27,6 +28,7 @@ class ClusterTypeFilterSet(OrganizationalModelFilterSet):
 
 
 class ClusterGroupFilterSet(OrganizationalModelFilterSet):
+    tag = TagFilter()
 
     class Meta:
         model = ClusterGroup

+ 2 - 6
netbox/virtualization/forms/filtersets.py

@@ -22,26 +22,22 @@ __all__ = (
 
 class ClusterTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = ClusterType
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class ClusterGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = ClusterGroup
-    field_groups = [
-        ['q'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),
         label=_('Search')
     )
+    tag = TagFilterField(model)
 
 
 class ClusterFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm):

+ 1 - 0
netbox/wireless/filtersets.py

@@ -25,6 +25,7 @@ class WirelessLANGroupFilterSet(OrganizationalModelFilterSet):
         queryset=WirelessLANGroup.objects.all(),
         to_field_name='slug'
     )
+    tag = TagFilter()
 
     class Meta:
         model = WirelessLANGroup

+ 1 - 3
netbox/wireless/forms/filtersets.py

@@ -29,6 +29,7 @@ class WirelessLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
         label=_('Parent group'),
         fetch_trigger='open'
     )
+    tag = TagFilterField(model)
 
 
 class WirelessLANFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
@@ -71,9 +72,6 @@ class WirelessLANFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
 
 class WirelessLinkFilterForm(BootstrapMixin, CustomFieldModelFilterForm):
     model = WirelessLink
-    field_groups = [
-        ['q', 'tag'],
-    ]
     q = forms.CharField(
         required=False,
         widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),