diff --git a/netbox/extras/filters.py b/netbox/extras/filters.py index f21c228db..4a991471b 100644 --- a/netbox/extras/filters.py +++ b/netbox/extras/filters.py @@ -43,11 +43,18 @@ class CustomFieldFilter(django_filters.Filter): return queryset.none() # Apply the assigned filter logic (exact or loose) - queryset = queryset.filter(custom_field_values__field__name=self.name) if self.cf_type == CF_TYPE_BOOLEAN or self.filter_logic == CF_FILTER_EXACT: - return queryset.filter(custom_field_values__serialized_value=value) + queryset = queryset.filter( + custom_field_values__field__name=self.name, + custom_field_values__serialized_value=value + ) else: - return queryset.filter(custom_field_values__serialized_value__icontains=value) + queryset = queryset.filter( + custom_field_values__field__name=self.name, + custom_field_values__serialized_value__icontains=value + ) + + return queryset class CustomFieldFilterSet(django_filters.FilterSet):