Я получаю другой результат, когда фильтрую в другой раз с теми же фильтрами.
Этот код является частью get_queryset()
класса, наследующего ListAPIView.
validity_filters = Q(
(
(
Q(display_publisher_group__publishers__id__exact=98)
| Q(display_publisher_group__isnull=True)
)
& (
~Q(blacklist_publisher_group__publishers__id__exact=98)
)
)
)
campaigns = Campaign.objects.filter(validity_filters)
print(1, campaigns.distinct().count())
campaigns = campaigns.filter(validity_filters)
print(2, campaigns.distinct().count())
вывод:
1 33276
2 33275