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