filter by states news
This commit is contained in:
parent
7a66559307
commit
b9ee22c4a5
|
|
@ -24,6 +24,8 @@ class NewsListFilterSet(filters.FilterSet):
|
||||||
|
|
||||||
state = filters.NumberFilter()
|
state = filters.NumberFilter()
|
||||||
|
|
||||||
|
state__in = filters.CharFilter(method='by_states_list')
|
||||||
|
|
||||||
SORT_BY_CREATED_CHOICE = "created"
|
SORT_BY_CREATED_CHOICE = "created"
|
||||||
SORT_BY_START_CHOICE = "start"
|
SORT_BY_START_CHOICE = "start"
|
||||||
SORT_BY_CHOICES = (
|
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.es_search(value, relevance_order='ordering' not in self.request.query_params)
|
||||||
return queryset
|
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):
|
def in_tags(self, queryset, name, value):
|
||||||
tags = value.split('__')
|
tags = value.split('__')
|
||||||
return queryset.filter(tags__value__in=tags)
|
return queryset.filter(tags__value__in=tags)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user