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的強大,短短几行程式碼,就可以很好的實現增刪改查操作。文章中涉及到的圖片上傳請檢視下列文章