diff --git a/netbox/dcim/filters.py b/netbox/dcim/filters.py index f06522895..f4a4ee22f 100644 --- a/netbox/dcim/filters.py +++ b/netbox/dcim/filters.py @@ -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()