当前位置: 代码迷 >> python >> 对两个联接的查询集进行排序-Django
  详细解决方案

对两个联接的查询集进行排序-Django

热度:46   发布时间:2023-06-16 14:15:05.0

我有两个查询集的联接:

fqs= FirstModel.objects.all()
sqs= SecondModel.objects.all()
sorted_qs = sorted(chain(fqs, sqs)) #<- need to sort here by "added" field. 

两种模型都具有此added字段。

added = models.DateTimeField(auto_add_now=true)

但是sorted_qs每次都给我不同的顺序。 我认为,链条每次都会随机加入。

我需要按某些字段名排序。 我该怎么做呢?

排序需要知道的关键:

sorted_qs = sorted(chain(fqs, sqs), key=lambda obj: obj.added)

参见此处: