从入门到自闭之Python--Django Rest_Framework

核心思想: 缩减编写api接口的代码python

Django REST framework是一个创建在Django基础之上的Web 应用开发框架,能够快速的开发REST API接口应用。在REST framework中,提供了序列化器Serialzier的定义,能够帮助咱们简化序列化与反序列化的过程,不只如此,还提供丰富的类视图、扩展类、视图集来简化视图的编写工做。REST framework还提供了认证、权限、限流、过滤、分页、接口文档等功能支持。REST framework提供了一个API 的Web可视化界面来方便查看测试接口。mysql

中文文档:https://q1mi.github.io/Django-REST-framework-documentation/#django-rest-frameworklinux

github: https://github.com/encode/django-rest-framework/tree/mastergit

特色

  • 提供了定义序列化器Serializer的方法,能够快速根据 Django ORM 或者其它库自动序列化/反序列化;
  • 提供了丰富的类视图、Mixin扩展类,简化视图的编写;
  • 丰富的定制层级:函数视图、类视图、视图集合到自动生成 API,知足各类须要;
  • 多种身份认证和权限认证方式的支持;[jwt]
  • 内置了限流系统;
  • 直观的 API web 界面;
  • 可扩展性,插件丰富

环境安装与配置

DRF须要如下依赖:github

  • Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6)
  • Django (1.10, 1.11, 2.0)

DRF是以Django扩展应用的方式提供的,因此咱们能够直接利用已有的Django环境而无需重新建立。(若没有Django环境,须要先建立环境安装Django)web

安装DRF

前提是已经安装了django,建议安装在虚拟环境sql

# mkvirtualenv drfdemo -p python3
# pip install django

pip install djangorestframework
pip install pymysql

linux 复制 shift+insert数据库

6.1.1 建立django项目

cd ~/Desktop
django-admin startproject drfdemo

使用pycharm打开项目,设置虚拟环境的解析器,并修改manage.py中的后缀参数。django

添加rest_framework应用

settings.pyINSTALLED_APPS中添加'rest_framework'。api

INSTALLED_APPS = [
    ...
    'rest_framework',
]

接下来就能够使用DRF提供的功能进行api接口开发了。在项目中若是使用rest_framework框架实现API接口,主要有如下三个步骤:

  • 将请求的数据(如JSON格式)转换为模型类对象
  • 操做数据库
  • 将模型类对象转换为响应的数据(如JSON格式)
相关文章
相关标签/搜索