Django REST Framework分页无法在远程服务器上运行

时间:2016-02-23 11:26:50

标签: python django django-rest-framework

我在Django Rest框架中实现了“PageNumber”分页,该框架在本地运行良好。但是,部署在远程服务器上的相同代码不会返回带有分页的结果。

分页班:

class MyPagination(PageNumberPagination):
    page_size = 10
    page_size_query_param = 'page_size'
    max_page_size = 20

使用分页查看:

class GetMyListings(generics.ListAPIView):
    serializer_class = serializers.MyListingSerializer
    pagination_class = utils.MyPagination
    permission_classes = (
        permissions.IsAuthenticated,
    )

    def get_queryset(self):
        order_by_clause = self.request.GET.get('order_by', '-posted_on')
        posted_clause = self.request.GET.get('posted', None)
        if posted_clause:
            return models.Post.objects.filter(owner=self.request.user,
                                              is_posted=utils.make_boolean(posted_clause)
                                              ).order_by(order_by_clause)
        return models.Post.objects.filter(owner=self.request.user).order_by(order_by_clause)

1 个答案:

答案 0 :(得分:3)

问题已解决,DRF的本地版本为3.3.2,因为服务器有3.1.0,因为版本PageNumberPagination或更高版本中允许使用3.3.2中的自定义Django Paginator

供参考,请参阅发行说明: http://www.django-rest-framework.org/topics/release-notes/#332