如何在Django rest框架中同时使用limit和order_by



我想将以下限制用作[1:10]

data = GroupPostsModel.objects.filter(
group_id=group_id) & GroupPostsModel.objects.filter(post_type=post_type).order_by('-time_stamp')

我试试这个

data = GroupPostsModel.objects.filter(
group_id=group_id & GroupPostsModel.objects.filter(post_type=post_type)[1:10].order_by('-time_stamp')

但是没有起作用。。!

先排序,然后切片。像这样:

data = GroupPostsModel.objects.filter(group_id=group_id, post_type=post_type).order_by('-time_stamp')[1:10]

注意:建议在tryexcept函数的QuerySet上包装切片。如果切片失败,那么它将引发异常

假设上面给出的查询有效,

data = GroupPostsModel.objects.filter(
group_id=group_id) & GroupPostsModel.objects.filter(post_type=post_type).order_by('-time_stamp')
data=  data[1:10]

或者你可以按照这个语法

data = ClassName.objects.filter(your conditions)[1:10]

最新更新