车陂IT仔 2022-04-20 04:00 采纳率: 0%
浏览 43
已结题

django rest_framework如何在get_paginated_response方法中返回url传入的每页展示的条数(page_size)

我重写了方法get_paginated_response,返回总条数、当前页面已经总页码,那么这么返回这个url(?/size=2)中的size呢

from collections import OrderedDict
from rest_framework.response import Response
from rest_framework.pagination import PageNumberPagination


class PageNumber(PageNumberPagination):
    page_size = 10
    page_size_query_param = 'size'
    page_query_param = 'page'
    max_page_size = None

    # 重写方法,去掉next等字段,自定义返回
    def get_paginated_response(self, data):
        return Response(OrderedDict([
            ('total', self.page.paginator.count),
            ('total_page', self.page.paginator.num_pages),
            ('page', self.page.number),
            # 这个是我疑问的地方
            ('size', ???),
            ('list', data),
        ]))
  • 写回答

1条回答 默认 最新

  • 车陂IT仔 2022-04-20 05:50
    关注

    1、使用self.request.query_params获取传入的参数list;
    "page_size": {
    "size": "1",
    "page": "2"
    },
    2、然后使用int(self.request.query_params["size"])获取到具体的值;
    "size": 1,

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月27日
  • 已采纳回答 4月20日
  • 创建了问题 4月20日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部