From 1cf3aa22cd1e517ac794dfd9d70bcd820a8bb8f3 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 10 Feb 2016 10:57:36 +0100 Subject: [PATCH] [Backport] Detecting invalid values when filtering by watchers --- taiga/base/filters.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/taiga/base/filters.py b/taiga/base/filters.py index 62b4dc20..a2932551 100644 --- a/taiga/base/filters.py +++ b/taiga/base/filters.py @@ -435,8 +435,12 @@ class WatchersFilter(FilterBackend): if query_watchers: WatchedModel = apps.get_model("notifications", "Watched") watched_type = ContentType.objects.get_for_model(queryset.model) - watched_ids = WatchedModel.objects.filter(content_type=watched_type, user__id__in=query_watchers).values_list("object_id", flat=True) - queryset = queryset.filter(id__in=watched_ids) + + try: + watched_ids = WatchedModel.objects.filter(content_type=watched_type, user__id__in=query_watchers).values_list("object_id", flat=True) + queryset = queryset.filter(id__in=watched_ids) + except ValueError: + raise exc.BadRequest(_("Error in filter params types.")) return super().filter_queryset(request, queryset, view)