django-rest-framework分页pagination和自动生成api文档

通过 pagination 进行分页 和 自动生成api文档的schema

自定义pagination类

    from rest_framework.pagination import PageNumberPagination
    class MyPagination(PageNumberPagination):
        page_size = 16                        # 每页16条(默认)
        max_page_size = 50                    # 最大每页条数(根据传入的值分页)
        page_query_param = "page"             # 前端url中传入的‘页数’名字
        page_size_query_param = "page_size"   # 前端url中传入的每页的数据条数
定义完了之后再类试图中加上:pagination_class = MyPagination 就可以了
此时访问: 
http://xxx.website.com/users-list/?page=30&page=3
表示每页30 条,第3页

自动生成api文档(不管是函数视图还是类视图都能显示)

  1. 安装rest_framework_swagger库

    • pip install django-rest-swagger
    • 在settings中加入:’rest_framework_swagger’
  2. 在项目下的 urls.py 中利用rest_framework自动生成api文档

    from rest_framework.schema import get_schema_view
    from rest_framework_swagger.renderers import SwaggerUIRenderer, OpenAPIRenderer

    schema_view = get_schema_view(title="api 文档", renderer_classes=(SwaggerUIRenderer, OpenAPIRenderer))

    urlpatterns = [
        url(r'^docs/$', schema_view, name="api 文档"),
    ]
    # 这时候你runserver,然后访问 localhost:8000/docs/ 就看到自动生成的文档了,注意
    # 需要登陆的接口只有登陆后才能看文档。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值