Django выбрать отдельный

models.py

class Category(models.Model):
    name = models.CharField(max_length=50)

    def __unicode__(self):
        return self.name

class Gender(models.Model):
    name = models.CharField(max_length=50)

    def __unicode__(self):
        return self.name

class Post(models.Model):
    name = models.CharField(max_length=50)
    categories = models.ManyToManyField(Category)
    genders = models.ManyToManyField(Gender)

    def __unicode__(self):
        return self.name

view.py:

def index(request):
    posts = Post.objects.filter(genders=1)

    categories = Category.objects.filter(post__genders=1)
                                 .exclude(post=None).order_by('-sort')

Почему я получаю одну и ту же категорию 3 раза, если есть 3 сообщения, где пол равен 1 ?? Мне нужна категория только 1 раз, когда я выбираю как "выбрать отдельный" - как я могу это сделать ??

9
задан cezar 20 February 2018 в 10:11
поделиться