From b9ee22c4a57bdcf9677083627797e6ffe767ae44 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Mon, 27 Jan 2020 19:44:07 +0300 Subject: [PATCH] filter by states news --- apps/news/filters.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apps/news/filters.py b/apps/news/filters.py index 064f7175..7e2068a4 100644 --- a/apps/news/filters.py +++ b/apps/news/filters.py @@ -24,6 +24,8 @@ class NewsListFilterSet(filters.FilterSet): state = filters.NumberFilter() + state__in = filters.CharFilter(method='by_states_list') + SORT_BY_CREATED_CHOICE = "created" SORT_BY_START_CHOICE = "start" SORT_BY_CHOICES = ( @@ -54,6 +56,10 @@ class NewsListFilterSet(filters.FilterSet): return queryset.es_search(value, relevance_order='ordering' not in self.request.query_params) return queryset + def by_states_list(self, queryset, name, value): + states = value.splite('__') + return self.filters(state__in=states) + def in_tags(self, queryset, name, value): tags = value.split('__') return queryset.filter(tags__value__in=tags)