gpt4 book ai didi

Django rest框架: how to turn off/on pagination in ModelViewSet

转载 作者:行者123 更新时间:2023-12-04 10:03:08 33 4
gpt4 key购买 nike

我正在使用带有默认分页设置的Django REST frameworkdjangorestframework-csv,但是当请求的格式为“CSV”时,则不需要分页。可以通过以下方式禁用分页:
pagination_class = None
有可能动态更改吗?

class ObjectViewSet(BaseViewSet, viewsets.ModelViewSet):

queryset = Object.objects.none()
serializer_class = ObjectSerializer
pagination_class = None # if format is "CSV"
# pagination_class = None # if fromat isn't "CSV"

谢谢。

最佳答案

一种选择是通过设置no_page查询参数来动态禁用 View 上的分页:

def paginate_queryset(self, queryset, request, view=None):
if 'no_page' in request.query_params:
return None

return super().paginate_queryset(queryset, request, view)

关于Django rest框架: how to turn off/on pagination in ModelViewSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44370252/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com