diff --git a/netbox/dcim/filtersets.py b/netbox/dcim/filtersets.py index 6d386f3cf..7a1d0a8d3 100644 --- a/netbox/dcim/filtersets.py +++ b/netbox/dcim/filtersets.py @@ -1400,6 +1400,12 @@ class DeviceComponentFilterSet(django_filters.FilterSet): to_field_name='slug', label=_('Device role (slug)'), ) + device_status = django_filters.ModelMultipleChoiceFilter( + field_name='device__status', + queryset=Device.objects.all(), + to_field_name='status', + label=_('Device (status)') + ) virtual_chassis_id = django_filters.ModelMultipleChoiceFilter( field_name='device__virtual_chassis', queryset=VirtualChassis.objects.all(), diff --git a/netbox/dcim/forms/filtersets.py b/netbox/dcim/forms/filtersets.py index 22e66763b..e5acfac64 100644 --- a/netbox/dcim/forms/filtersets.py +++ b/netbox/dcim/forms/filtersets.py @@ -129,6 +129,11 @@ class DeviceComponentFilterForm(NetBoxModelFilterSetForm): }, label=_('Device') ) + device_status = forms.MultipleChoiceField( + choices=DeviceStatusChoices, + label=_('Device status'), + required=False + ) class RegionFilterForm(ContactModelFilterForm, NetBoxModelFilterSetForm):