Django REST framework 简介
不重复造轮子,是开发人员共同的哲学道理。在使用 Python 开发 RESTful Web API 时,就有一个大名鼎鼎的轮子 Django REST framework,这一节我们就来简单了解一下 Django REST framework。
Django REST framework 一听就是和著名的 Python web 开发框架 Django 有很大的关系,这个框架是由 Tom Christie 在 Django 框架基础之上二次开发的开源项目,是用来帮助开发者快速构建 RESTful Web API 的强大而又灵活的工具。
1. Django REST framework 的特点
-
提供了定义序列化器 Serializer 的方法,可以快速根据 Django ORM 或者其它库自动序列化/反序列化;
-
提供了丰富的类视图、Mixin 扩展类,简化视图的编写;
-
丰富的定制层级:函数视图、类视图、视图集合到自动生成 API,满足各种需要;
-
多种身份认证和权限认证方式的支持;
-
内置了限流系统;
-
直观的 API web 界面;
-
可扩展性,插件丰富
2. Django REST framework 构建原理
Django REST framework 是在 Django 框架的基础上进行扩充,从而可以帮助我们简化部分的代码编写,大大提高 RESTful Web API 的开发速度。
- 在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代码是可以复用简化编写的。
- 在开发 REST API 的视图中,虽然每个视图具体操作的数据不同,但增、删、改、查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的:
- 增:校验请求数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回
- 删:判断要删除的数据是否存在 -> 执行数据库删除
- 改:判断要修改的数据是否存在 -> 校验请求的数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回
- 查:查询数据库 -> 将数据序列化并返回
Django REST framework 相关资料:
3.小结
本节主要带领大家了解了一下 Django REST framework 框架。接下来我们将使用这套框架,开发一套属于自己的 RESTful Web。