Объединение двух наборов запросов django без изменения их порядка

Мне нужно выполнить две различные фильтрации набора запросов. qs1 = qs.filter(name=value) qs2 = qs.filter(equipment_set__name=value)

Затем мне нужно соединить их без изменения порядка, так же, как они были созданы.

qs_result = <QuerySet [<qs1 >, <qs2>,]

Вы можете работать с .union(…) [Django-doc]:

qs_result = qs1.union(qs2, all=True)

Это может дать один и тот же элемент несколько раз. Чтобы предотвратить это, удалите all=True:

qs_result = qs1.union(qs2)  # without duplicates
Вернуться на верх