Я хочу написать базовый вариант поиска для моего сайта. У меня есть две таблицы в моей базе данных, и я хочу получить два результата из этой базы данных, которые соответствуют моему запросу.
from itertools import chain
res1 = table1.objects.filter(Q(label__istartswith = query)).extra(select={'length':'Length(label)'}).order_by('length')
res2 = table2.objects.filter(Q(label__istartswith = query)).extra(select={'length':'Length(label)'}).order_by('length')
res = list(chain(res1, res2)
Перед цепочкой итераций я получил верный результат, который был указан в виде длины метки, но теперь я получаю список результатов table1
с меткой длины table1
. После первого списка table2
список результатов с меткой table2
length ...
Я пытался создать массив для добавления res1
и res2
, чтобы получить то, что мне нужно, вместо операции цепочки, но мне не удалось ...