请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

试验自定义pagenation_class失败

安装的rest_framework源代码里,pagination类默认是None,最新的rest_framework安装后就是这个样子了:

'DEFAULT_PAGINATION_CLASS': None,

我修改为:

'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',

view.py里修改如下:

class GoodsPagination(PageNumberPagination):
        page_size = 10
        page_size_query_param = 'page_size'
        page_query_param="p"
        max_page_size = 100
class GoodsListView(generics.ListAPIView):
        """
        商品列表页
        """
        queryset = Goods.objects.all()
        serializer_class = GoodsSerializer
        pagenation_class=GoodsPagination

setting.py里REST_FRAMEWORK已经注释掉了。

#REST_FRAMEWORK={
#    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
#    'PAGE_SIZE': 10,   #分页配置
#}

启动后,不显示分页。请问是哪里出了问题呢?


正在回答 回答被采纳积分+3

2回答

提问者 慕数据957128 2018-01-25 16:44:53

https://img1.sycdn.imooc.com//szimg/5a6998ea0001bc4811590782.jpg

不分页时显示的格式

0 回复 有任何疑惑可以回复我~
  • bobby #1
    你加我的qq 442421039 我看看
    回复 有任何疑惑可以回复我~ 2018-01-29 15:41:38
bobby 2018-01-25 10:48:37

你启动后数据的返回格式是什么样子呢 截图我看看

0 回复 有任何疑惑可以回复我~
  • 提问者 慕数据957128 #1
    我本地代码回退到那一章,重新测试,结果依旧不能显示分页,回复评论贴不了图。
    在代码回退前,我学习到6.2节,用ViewSet和Router的时候,测试了一下,views.py里pagenation_class是生效的,和回退后区别仅仅是views.py里一个是ViewSet方式一个是APIView方式。setting和安装包的配置保持和回退后一样。
    回复 有任何疑惑可以回复我~ 2018-01-25 16:10:02
  • 提问者 慕数据957128 #2
    我在这个问题后以回答的方式贴了个图,以示返回格式,请看看。
    回复 有任何疑惑可以回复我~ 2018-01-25 16:45:58
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信