diff --git a/netbox/dcim/filters.py b/netbox/dcim/filters.py index 29c6fe85e..b72b6e511 100644 --- a/netbox/dcim/filters.py +++ b/netbox/dcim/filters.py @@ -601,6 +601,16 @@ class InterfaceListFilter(django_filters.FilterSet): name='name', label='Device', ) + site_id = django_filters.ModelMultipleChoiceFilter( + queryset=Site.objects.all(), + label='Site (ID)', + ) + site = django_filters.ModelMultipleChoiceFilter( + name='site__slug', + queryset=Site.objects.all(), + to_field_name='slug', + label='Site name (slug)', + ) type = django_filters.CharFilter( method='filter_type', label='Interface type', diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index 99d74d2f0..f3ad9fdd3 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -1621,7 +1621,7 @@ class InterfaceListFilterForm(BootstrapMixin, forms.Form): model = Interface q = forms.CharField(required=False, label='Search') site = FilterChoiceField( - queryset=Site.objects.annotate(filter_count=Count('devices')), + queryset=Site.objects.annotate(filter_count=Count('interfaces')), to_field_name='slug', ) #device = forms.ModelChoiceField(required=False, queryset=Device.objects.all(), to_field_name='slug')