首頁>技術>

Rest Api介面開發核心任務將請求的資料(如json格式)轉換為模型類物件-反序列化操作資料庫將模型類物件轉換為響應的資料(如json格式)-序列化Django Rest framework

DRF框架是建立在Django基礎上,用於構建Rest web Api的強大而靈活的工具,通常在序列化和反序列化時,雖然操作的資料不相同,但是執行的過程是相似的,也就是部分程式碼是可以複用簡化編寫,並且增刪改查的實現基本的套路是一樣的,這部分程式碼也可以複用簡化。

增:校驗請求資料->執行反序列化過程->儲存資料庫->將儲存的物件序列化後返回

改:判斷要修改的資料是否存在->校驗請求資料->執行反序列化過程->儲存資料->將儲存的物件序列化後返回

查:查詢資料庫->將資料序列化後返回

DRF幫助我們簡化了上述的操作,是開發效率大大提高.

model指明該序列化器處理的資料欄位是從模型類Article生成的

fields指明該序列化器包含模型類中的哪些欄位,__all__包含所有欄位

queryset指明檢視集在查詢資料時使用的查詢集

serializer_class指明該檢視在進行序列化和反序列化時使用的序列化器

通過DefaultRouter路由器來註冊檢視集的路由,然後再專案的路由中註冊app的路由

專案的路由檔案

執行測試

執行django專案,在瀏覽器開啟http://127.0.0.1:8000/api/articles/

drf管理頁面

這是DRF框架的介面管理頁面,可以方便我們對介面進行除錯,新增一個文章

http://127.0.0.1:8000/api/articles/2/可以通過這樣的路由訪問文章詳情,在詳情頁面,可以對文章進行各種操作。可以看到DRF的強大,短短几行程式碼,就可以很好的實現增刪改查操作。文章中涉及到的圖片上傳請檢視下列文章

  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 用思維導圖梳理程式設計師做系統設計的挑戰與核心系統概念