Django: получить список всех связанных объектов в models.py - PullRequest
0 голосов
/ 18 апреля 2019

это глупый вопрос, но я новичок в django и пока не нашел ответа.

Я пытаюсь получить список всех связанных лет в функции get_savings.Не смотрите на атрибуты года и плана.Все они существуют.
Основное внимание уделяется циклу For.Я также попробовал for year in self.year_set.all:, но это тоже не сработало.

models.py

class Plan(models.Model):
    title = models.CharField(max_length=50)
    ...

    @property
    def get_saving(self):
        delta: timedelta = now() - self.date_created
        months_gone = delta.days / 30
        saving = 0
        for year in Year.objects.all():
            if months_gone > year.months:
                saving = saving + year.savings_year
            else:
                saving = saving + months_gone * year.income_month
        return saving


class Year(models.Model):
    title = models.IntegerField()
    plan = models.ForeignKey(Plan, on_delete=models.CASCADE)

1 Ответ

2 голосов
/ 18 апреля 2019

self.year_set.all() - это то, что вам нужно.

all - это функция, поэтому вам нужно вызывать ее, а не просто ссылаться на нее.

...