Django合并了queryset,列出了具有指定列长度的iterables

时间:2011-08-19 07:56:12

标签: python django iteration

我想为我的网站写一个基本的搜索选项。我的数据库中有两个表,我想从这个满足我查询的数据库中得到两个结果。

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长度...

我试过制作一个数组来附加res1res2来获取我需要的东西而不是链接操作,但我没有成功......

0 个答案:

没有答案