Django REST framework介绍
- 在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代 码是可以复用简化编写的。
- 在开发REST API的视图中,虽然每个视图具体操作的数据不到、改、查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的:
- 增:校验请求数据->执行反序列化过程->保存数据库->将保存的对象序列化并返回
- 删:判断要删除的数据是否存在->执行数据库刪除
- 改:判断要修改的数据是否存在->校验请求的数据->执行烦序列化过程->保存数据库->将保存的对象序列化返回
- 查:查询数据库-> 将数据序列化返回
Django REST framework可以帮助我们简化上述的两部分代码编写,大大提高REST API的开发速度。
认识Django REST framework
Django REST framework 框架是一个用于构建Web API的强大灵活的工具。
通常简称为DRF框架 或 REST framework。
DRF框架是建立在Django框架基础之上,由Tom Christie大牛二次开发的开源项目。
特点
- 提供了定义序列化器Serializer的方法,可以根据Django ORM 或者其他库自动序列化/反序列化
- 提供了丰富的类视图丶Mixin扩展类,简化视图的编写;
- 丰富的定制层级:函数视图,类视图丶视图集合到自动生成API,满足各种需求
- 多种身份认证和权限认证方式的支持
- 内置了限流系统
- 直观的API Web界面
- 可扩展性,插件丰富
官方地址:https://www.django-rest-framework.org/
环境安装与配置
Django REST framework需要以下依赖
- Python(3.5, 3.6,3.7,3.8)
- Django(1.11, 2.0,2.1,2.2,3.0)
Django REST framework是以Django扩展应用的方式提供的,所以我们可以直接利用已有的Django环境而无需从新建立。(若没有Django环境,需要先创建环境安装Django)
安装Django REST framework
如果报WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:992)'))': /simple/djangorestframework/后面加上
--trusted-host pypi.org --trusted-host files.pythonhosted.orgpip install djangorestframework --trusted-host pypi.org --trusted-host files.pythonhosted.org添加rest_framework应用
我们利用在Django框架学习中创建demo工程,在settings的INSTALLED_APPS中点添加
rest_framework