Django休息框架分页覆盖



我认为我正在建立全局分页设置并在基本视图集中覆盖它,但这似乎并没有发生。

在我的设置中,我有:

REST_FRAMEWORK = {
    'PAGINATE_BY': 10
}

但是在我的视图中,我有

class MyViewSet(viewsets.ReadOnlyModelViewSet):
    """ DRF endpoint. """
    queryset = MyModel.objects.all()
    paginate_by = None  # Note this guy right here
    serializer_class = MySerializer
    lookup_field = 'my_id'
    filter_backends = (filters.SearchFilter,)
    search_fields = ('name',)

当我碰到终点时,我将在10s上获得分页。这不是这样做的正确方法吗?

使用 None作为该值的效果与根本不设置paginate_by属性相同。看看DRF的代码。您必须在其中设置一个明确的值才能具有效果。

只要我们在主题上,'PAGINATE_BY'全局设置将很快被弃用,而不是'PAGE_SIZE',并且应使用自定义的Paginator子类替换paginate_by类属性。

<</p> <</p>

最新更新