zeKe

drf

使用Django Rest Framework进行API接口开发

drf
本文章记录使用drf框架进行API接口开发 安装 安装模块 pip install djangorestframework 快速启动项目 # 生成一个名为name的项目 django-admin startproject app # 生成名为api的app django-admin startapp api 引入 settings. Read more...

Django Rest Framework 分页功能与搜索功能

drf
本文章记录在drf框架中实现分页、搜索功能. 实践 分页器 分页器的实现官网介绍有两种方式: 配置文件配置 继承父类完成自定义分页器 分析分页器源码 自定义分页器主要是继承PageNumberPagination,改写get_paginated_response方法与paginate_queryset方法. > 其中get_paginated_response主要是编写分页器的返回结果. 需求示例: 前端采用iView组件中的分页器,该前端分页器主要接收总页数与当前页数.所以后端需要返回数据,并且返回一个总页数. class MyPagination(PageNumberPagination): # 指定每一页的个数,默认为配置文件里面的PAGE_SIZE page_size = 10 # 可以让前端指定每页个数,默认为空,这里指定page_size去指定显示个数 page_size_query_param = 'page_size' # 可以让前端指定页码数,默认就是page参数去接收 page_query_param = 'page' # 指定返回格式,根据需求返回一个总页数,数据存在results字典里返回 def get_paginated_response(self, data): from collections import OrderedDict return Response( OrderedDict([('count', self. Read more...

Django Rest Framework JWT鉴权实践

drf
本文章记录在drf框架中对JWT鉴权实践过程. 实践 安装djangorestframework-jwt模块 场景1: 修改默认Username作为用户名验证 改成以uid作为用户名 settings.py JWT_PAYLOAD_GET_USERNAME_HANDLER = 'uid' # 修改验证后端 AUTHENTICATION_BACKENDS = [ 'auth. Read more...
1 of 1