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