DRF(Django-restframework)
中文文档:https://q1mi.github.io/Django-REST-framework-documentation/#django-rest-framework
github: https://github.com/encode/django-rest-framework/tree/master
表述
最少的语言描述Django?
将数据库的东西通过ORM的映射取出来,通过view文件,按照template文件排出的模板渲染成HTML
。当用户请求相应的url时,返回相应的结果
。
最少语言描述DRF?
将数据库的东西通过ORM的映射取出来,通过view和serializers文件绑定REST接口
,当前端请求时,返回序列化好的json
。
最少语言描述DRF在Django的基础上做了什么?
DRF是Django的超集,去掉了模板的部分,提供了一个REST的接口,同时也提供了满足该接口的代码工作流。同时,在REST的规范下,升级了权限和分页等功能,增加了限流和过滤搜索等功能。
核心思想:大量缩减编写api接口的代码
Django Rest framework是一个建立在Django基础之上的Web应用开发框架,可以快速的开发Rest Api接口应用。
特点
- 提供了定义序列化器Serializer的方法,可以快速根据Django ORM或者其他库自动序列化/反序列化;
- 提供了丰富的类视图、Mixin扩展类,简化视图的编写;
- 丰富的定制层级:函数视图、类视图、视图集合到自动合成API,满足各种需要;
- 多种身份认证和权限认证方式的支持[jwt];
- 内置了限流系统;
- 直观的API Web界面;
- 可扩展性,插件丰富。
环境安装与配置
DRF需要一下依赖:
- Python(3.5以上)
- Django(2.2以上)
DRF是以Django子应用的方式提供的,所以我们可以直接利用已有的Django环境而无需重新创建。(Django是前提条件)
安装DRF
conda create -n drfdemo python=3.8
pip install django==3.2.4 -i https://pypi.douban.com/simple
pip install djangorestframework -i https://pypi.douban.com/simple
// 因为开发API接口必然要操作数据,所以安装pymysql
pip install pymysql -i https://pypi.douban.com/simple