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

Filter cleanup

This commit is contained in:
Jeremy Stretch
2018-11-05 15:45:21 -05:00
parent ce7930abfd
commit ded90df01b

View File

@@ -636,12 +636,12 @@ class InterfaceFilter(django_filters.FilterSet):
name='tags__slug',
)
vlan_id = django_filters.CharFilter(
method='filter_vlan_by_pk',
name='vlan_pk',
method='filter_vlan_id',
label='Assigned VLAN'
)
vlan = django_filters.CharFilter(
method='filter_vlan_by_id',
name='vid',
method='filter_vlan',
label='Assigned VID'
)
class Meta:
@@ -657,11 +657,23 @@ class InterfaceFilter(django_filters.FilterSet):
except Device.DoesNotExist:
return queryset.none()
def filter_vlan_by_pk(self, queryset, name, value):
return queryset.filter(Q(untagged_vlan_id=value) | Q(tagged_vlans=value))
def filter_vlan_id(self, queryset, name, value):
value = value.strip()
if not value:
return queryset
return queryset.filter(
Q(untagged_vlan_id=value) |
Q(tagged_vlans=value)
)
def filter_vlan_by_id(self, queryset, name, value):
return queryset.filter(Q(untagged_vlan_id__vid=value) | Q(tagged_vlans__vid=value))
def filter_vlan(self, queryset, name, value):
value = value.strip()
if not value:
return queryset
return queryset.filter(
Q(untagged_vlan_id__vid=value) |
Q(tagged_vlans__vid=value)
)
def filter_type(self, queryset, name, value):
value = value.strip().lower()