Switch to filter_site method

This commit is contained in:
Joseph Kennedy 2017-08-30 21:26:41 -04:00
parent 0e3c2faba8
commit 5b7cb8eb4f

View File

@ -587,8 +587,7 @@ class InterfaceListFilter(django_filters.FilterSet):
)
site = django_filters.ModelMultipleChoiceFilter(
name='site',
queryset=Device.objects.select_related('site'),
to_field_name='site',
method='_filter_site',
label='Site name (slug)',
)
#role_id = django_filters.ModelMultipleChoiceFilter(
@ -617,7 +616,7 @@ class InterfaceListFilter(django_filters.FilterSet):
def filter_site(self, queryset, name, value):
try:
device = Device.objects.select_related('site').get(**{name: value})
ordering = device.device_type.interface_ordering
ordering = device.site.interface_ordering
return queryset.filter(device=device).order_naturally(ordering)
except Device.DoesNotExist:
return queryset.none()