如何合并两个查询集并对其进行排序

时间:2020-10-28 13:23:06

标签: python django

我为两个不同的模型设置了两个查询。我将它们与链条结合在一起并按日期排序。当我想撤销订单时,出现错误。这是我的代码:

def get_queryset(self):
    query = self.request.GET.get('search')

    if query:
        likes = FilmLike.objects.filter(film__title__icontains=query).exclude(users=None)
        dislikes = FilmDisLike.objects.filter(film__title__icontains=query).exclude(users=None)
        object_list = sorted(chain(likes, dislikes),key=lambda instance: instance.created_at)
    else:
        likes = FilmLike.objects.filter().exclude(users=None)
        dislikes = FilmDisLike.objects.filter().exclude(users=None)
        object_list = list(likes) + list(dislikes)
        object_list = sorted(chain(likes, dislikes),key=lambda instance: instance.created_at)
    return object_list

此代码有效,但是当我将“ instance.created_at”更改为“ -instance.created_at”时,出现此错误:

bad operand type for unary -: 'dateTime.datetime'

0 个答案:

没有答案