From 55ff836db771cffa87d4ce6d78bf34dc5fd73300 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Date: Mon, 29 Jul 2024 21:27:37 +0700 Subject: [PATCH] 16946 raise error if filterset is not valid --- netbox/netbox/graphql/filter_mixins.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/netbox/netbox/graphql/filter_mixins.py b/netbox/netbox/graphql/filter_mixins.py index 5075e9aa2..997c1209d 100644 --- a/netbox/netbox/graphql/filter_mixins.py +++ b/netbox/netbox/graphql/filter_mixins.py @@ -201,4 +201,10 @@ def autotype_decorator(filterset): class BaseFilterMixin: def filter_by_filterset(self, queryset, key): - return self.filterset(data={key: getattr(self, key)}, queryset=queryset).qs + filterset = self.filterset(data={key: getattr(self, key)}, queryset=queryset) + if not filterset.is_valid(): + # filterset.errors is errorDict - return first error as exception + k, v = next(iter(filterset.errors.items())) + raise Exception(f"{k}: {v[0]}") + qs = filterset.qs + return qs