Как получить доступ к полю "многие-ко-многим", связанному с определенным id модели в Django?
Для определенного идентификатора проекта я хотел бы иметь доступ ко всем пользователям, связанным с проектом.
models.py находится ниже:
class IndividualProject(models.Model):
project = models.CharField(
max_length = 64
)
group = models.ForeignKey(
Group,
on_delete=models.CASCADE,
related_name = "project_group",
blank=True,
null=True,
)
user = models.ManyToManyField(
UserProfile,
blank = True,
)
def __str__(self):
return f"Project {self.project}"
Если я сделаю IndividualProject.objects.get(id = 1)
, я хотел бы иметь возможность видеть всех пользователей, связанных с этим проектом.
Я могу найти все проекты, связанные с определенным пользователем, согласно следующему:
test = UserProfile.objects.get(id = 1)
test.individualproject_set.all()
Есть ли способ сделать вышеописанное, но используя конкретный проект?
Спасибо!
Просто посмотрите на прямое отношение на поле "многие-ко-многим":
project = IndividualProject.objects.get(id=1)
print(project.user.all()) # queryset of Users
Возможно, вам стоит переименовать поле в users
, так как оно относится к нескольким пользователям, а не только к одному.
Просто как:
IndividualProject.objects.get(id = 1).user.all()