Django много ко многим - PullRequest
       3

Django много ко многим

0 голосов
/ 21 января 2020

Я довольно новичок в django и пытаюсь создать приложение со следующими моделями

class User(models.Model):
    name = models.CharField(max_length=20)


class Group(models.Model):
    identifier = models.CharField(max_length=3,primary_key=True)
    name = models.CharField(max_length=120)
    def __str__(self):
        return self.name
class Department(models.Model):
    users = models.ManyToManyField(User)
    ric = models.CharField(max_length=12,primary_key=True)
    name = models.CharField(max_length=60)
    def __str__(self):
        return self.name

class Encounter(models.Model):
    department = models.ForeignKey(Department,on_delete=models.DO_NOTHING)
    message = models.CharField(max_length=120)
    datetime = models.DateTimeField()

Пользователь, наконец, будет зарегистрированным пользователем. Я могу получить набор всех объектов Department для пользователя, но как мне получить набор для всех Encounters с указанным набором Departments? Есть какие-то встроенные или я просто использую для l oop во всех департаментах?

1 Ответ

0 голосов
/ 21 января 2020

Один из возможных способов:

encounters = Encounter.objects.filter(
    department__in=QUERYSET_CONTAINING_DEPARTMENTS,
).distinct()

Возможно, вы захотите прочитать: Отношения многие-к-одному

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...