diff --git a/apps/establishment/filters.py b/apps/establishment/filters.py index 20ece644..91670031 100644 --- a/apps/establishment/filters.py +++ b/apps/establishment/filters.py @@ -1,6 +1,7 @@ """Establishment app filters.""" from django.core.validators import EMPTY_VALUES from django_filters import rest_framework as filters + from establishment import models @@ -10,10 +11,10 @@ class EstablishmentFilter(filters.FilterSet): tag_id = filters.NumberFilter(field_name='tags__metadata__id',) award_id = filters.NumberFilter(field_name='awards__id',) search = filters.CharFilter(method='search_text') - est_type = filters.ChoiceFilter(choices=models.EstablishmentType.INDEX_NAME_TYPES, - method='by_type') - est_subtype = filters.ChoiceFilter(choices=models.EstablishmentSubType.INDEX_NAME_TYPES, - method='by_subtype') + type = filters.ChoiceFilter(choices=models.EstablishmentType.INDEX_NAME_TYPES, + method='by_type') + subtype = filters.ChoiceFilter(choices=models.EstablishmentSubType.INDEX_NAME_TYPES, + method='by_subtype') class Meta: """Meta class.""" @@ -23,8 +24,8 @@ class EstablishmentFilter(filters.FilterSet): 'tag_id', 'award_id', 'search', - 'est_type', - 'est_subtype', + 'type', + 'subtype', ) def search_text(self, queryset, name, value): @@ -34,10 +35,14 @@ class EstablishmentFilter(filters.FilterSet): return queryset def by_type(self, queryset, name, value): - return queryset.by_type(value) + if value not in EMPTY_VALUES: + return queryset.by_type(value) + return queryset def by_subtype(self, queryset, name, value): - return queryset.by_subtype(value) + if value not in EMPTY_VALUES: + return queryset.by_subtype(value) + return queryset class EstablishmentTypeTagFilter(filters.FilterSet):