1、在序列化與反序列化時,雖然操作的數據不盡相同,但是執行的過程卻是相似的,也就是說這部分代碼是可以復用簡化編寫的。
2、在開發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 界面;
- 可擴展性,插件豐富
資料: