Как отфильтровать детей по родительскому полю - PullRequest
2 голосов
/ 27 февраля 2020

Пример, models.py:

class Guy(models.Model):
    name = models.CharField(max_length=30)


class Mom(models.Model):
    name = models.CharField(max_length=150, choices=MOTHER_NAMES, default=MOTHER_NAMES[0][0])
    guy = models.OneToOneField(Guy, on_delete=models.SET_NULL)

Как получить набор запросов парней, имя мамы которых 'София'

1 Ответ

2 голосов
/ 27 февраля 2020

Вы можете найти validation_contract_id s матерей, чье имя София , и вы можете найти детей, чей идентификатор в этом validation_contract_ids.

Вы можете использовать следующий запрос :

Guy.objects.filter(id__in=Mom.objects.filter(name='Sophia').values_list('guy_id',flat=True))
...