Django: Добавьте условие свойства для другого свойства

Для одного свойства я не могу отфильтровать Queryset с другим свойством. Я хочу, чтобы если "отец" имеет "Star" в "True", "star_descendant" возвращал "отца".

У меня такая ошибка: Exception Value: 'QuerySet' object has no attribute 'star'. Как это исправить?

Мой код :

    @property
    def star(self):
        if Evenements.objects.filter(eventtype=93).filter(xrefindividuproprio=self):
            return True
        return False

    @property
    def star_descendant(self):
        father = Individus.objects.filter(codeid=self.xrefpere_id)
        mother = Individus.objects.filter(codeid=self.xrefmere_id)
        if father.star == True:
            return father

В вашей функции "отец" и "мать" являются кверисетами. "Звезда" - это свойство объекта. Вы должны получить объект. У кверисета нет атрибута "звезда".

if Individus.objects.filter(codeid=self.xrefpere_id).count() > 0:
    father = Individus.objects.filter(codeid=self.xrefpere_id).first()
    if father.star == True:
        return father
Вернуться на верх