У меня есть приложение, которое используется для управления заданиями помощника. Следовательно, модель состоит из 3 моделей: человек, курс, приложение (типичное отношение «многие ко многим»). Мой models.py
выглядит следующим образом:
class Person(AbstractUser):
...
class Course(models.Model):
year = models.charField(max_length=9)
term = ...
class Applications(models.Model):
applicant = models.ForeignKey(Person, on_delete=models.CASCADE, related_name="applicant")
course = models.ForeignKey(Course, on_delete=models.CASCADE)
status = models.CharField(max_length=255, default='Pending')
В контексте формы мне нужно получить все курсы, которые были наняты человеком, чтобы заполнить раскрывающийся список.
Легко получить все приложения текущего пользователя, который имеет статус «Наем»:
Applications.objects.filter(applicant=user, status="Hired")
, но я не могу получить набор запросов для всех связанных курсов:
Applications.objects.filter(applicant=user, status="Hired").course_set
возвращает мне:
AttributeError: у объекта 'QuerySet' нет атрибута 'course_set'
Согласно Django документации , этот атрибут должен существовать.
Что я делаю не так?