Допустим, у меня установлены следующие модели:
class X(models.Model):
...
class Y(models.Model):
x = models.ForeignKey(X)
class Z(models.Model):
x = models.ForeignKey(X)
Теперь в методе я хочу получить все Y
объекты и Z
объекты, которые связаны с данным X
объектом. Я хочу поразить мою базу данных один раз и вернуть комбинированный набор запросов. Прямо сейчас я делаю это так:
x = X.objects.get(pk=1)
queryset = []
for cls in [Y, Z]:
queryset += list(cls.objects.filter(x=x))
Примечание: запуск его через цикл важен, потому что в моем собственном коде немало моделей, поэтому циклы сохраняют все СУХОЕ. Как я могу это сделать? Благодаря.