Django FilterSet, Count и Distinct
Я создаю пользовательский фильтр для модели, и я хотел бы иметь два optional boolean поля, которые бы изменяли способ создания набора запросов.
Одно булево для distinct, чтобы результатом были только уникальные значения, как в .distinct(), и другое булево для count, которое вместо этого вернет количество элементов, как в .count()
Я нашел это: https://django-filter.readthedocs.io/en/stable/ref/filters.html#distinct, но я не могу понять, как его использовать. Также я не нашел способа для count
Мой фильтр выглядит следующим образом:
class MyModelFilter(django_filters.FilterSet):
class Meta:
model = Inventory
fields = (
"service",
"provider"
"recorded_at",
"tenant",
"tenant_name",
"project_system",
"area",
"environment",
"region",
)
data_filter = django_filters.CharFilter(method="json_filter")
def json_filter(self, queryset, name, value):
string_to_json = json.loads(value)
return queryset.filter(data__contains=string_to_json)