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

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日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度