Я предполагаю, что модель "Марк" - это то, как пользователи голосуют.Чтобы получить все модели носителей с их количеством меток, вам нужно агрегация :
from django.db.models import Count
media_with_vote_count = Media.objects.annotate(vote_count=Count('mark_set'))
Затем вы можете использовать filter()
, который ссылается на эту аннотацию:
voted_media = media_with_vote_count.filter(vote_count__gt=0)
Есть и другие полезные агрегаты.Например, вы можете рассчитать среднюю оценку для каждого носителя:
from django.db.models import Avg
media_with_markavg = Media.objects.annotate(average_mark=Avg('mark_set__mark'))