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

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 13:50
    关注

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

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

报告相同问题?

问题事件

  • 系统已结题 4月28日
  • 已采纳回答 4月20日
  • 创建了问题 4月20日

悬赏问题

  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择
  • ¥15 这款软件是什么?需要能满足我的需求
  • ¥15 SpringSecurityOauth2登陆前后request不一致