У меня есть пара моделей, настроенных так:
Group(models.Model):
name = models.TextField(max_length=255)
Thing(models.Model):
location = models.TextField(max_length=255)
group = models.ForeignKey(Group)
Это всего лишь пример, иллюстрирующий взаимосвязь, так что простите любые синтаксические ошибки.
Мой вопрос в том, как найти группу, которая имеет определенный набор местоположений? Я должен иметь доступ к вещам, связанным с группой, используя:
Group.thing_set
Правильно? Итак, есть ли способ, которым я могу фильтровать, основываясь на том, какие элементы находятся в наборе thing_set? Я думаю что-то в этом роде.
Group.objects.filter(thing_set.location in ["Location A", "Location B"]).all()
Надеюсь, это вернет мне каждую группу, содержащую вещи как из местоположения A, так и из местоположения B. Любые предложения или толчок в правильном направлении будут очень полезны!
Спасибо.