從入門到自閉之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格式)
相關文章
相關標籤/搜索