最後一篇:結束不想說再見,那就揚帆再次起航!
- 2020 年 9 月 18 日
- 筆記
- HelloDjango

作者:HelloGitHub-追夢人物
我們已經成功地用 django-rest-framework 為個人部落格添加了完善的 RESTful API 介面,是時候來回顧下 HelloDjango-REST-framework-tutorial 教程共計 17 篇的內容都聊了些什麼。都聊了些什麼。
教程回顧
- 源碼://github.com/HelloGitHub-Team/HelloDjango-REST-framework-tutorial
- 追夢人物的部落格://www.zmrenwu.com
- 往期回顧
在 HelloDjango-REST-framework-tutorial 教程的前兩篇,我們介紹什麼是 RESTful API 以及開發 RESTful API 的框架 django-rest-framework,這是我們進行 API 開發的基礎。
第 3、4、5 篇講解了如何開發部落格文章列表介面,介面的開發方式從最簡單的視圖函數演進到基於類的通用視圖,最後演進到視圖集,三種方式所需的程式碼量逐步減少,程式碼復用程度逐步提高,初步體會到 django-rest-framework 框架的強大之處。我們還通過這個介面的開發了解了序列化器(Serializer)、路由器(Router)的概念和使用方式。
第 6 篇講解了一行程式碼增加分頁功能,再次體會到 django-rest-framework 框架的強大之處。
第 7、8 篇講解了文章詳情介面開發,我們了解到了如何在序列化器中添加自定義的序列化欄位。
第 9、10 篇講解了部落格側邊欄所需數據以及評論介面的開發,重點了解到如何在視圖集標準介面外增加額外的介面,即自定義 action。
第 11 篇講解了如何使用第三方庫 drf-haystack 來實現搜索介面,了解到如何利用開源社區來為我們節約複雜功能的開發時間。
第 12 篇講解了如何實現快取,同樣也是藉助開源的第三庫 drf-extensions。
第 13 篇講解了介面版本管理的方式,為以後 API 可能的變更做準備。
第 14 篇講解了介面的限流,即限制介面的訪問頻率,防止介面被濫用。
第 15 篇講解了如何對介面進行單元測試,最大程度保證所開發功能的正確性。
第 16 篇講解了如何自動化生成介面文檔。
總而言之,我們通過一個部落格實戰項目,講解了 django-rest-framework 各項核心功能及其用法,涵蓋了 django-rest-framework 開發的方方面面。
教程進行到這裡,HelloDjango-REST-framework-tutorial 教程就要準備告一段落了,大部分開發中的需求,你都可以通過教程中講到的知識點,結合 django 以及 django REST framework 的官方文檔來實現。
結束後的計劃
不過,真的要結束了嗎?我的回答是沒有也不想結束。
對部落格來說,我們還可以做這些很酷的功能:
- 支援用戶登錄,甚至使用 GitHub、新浪微博等第三方應用登錄
- 支援多級評論
- 國際化
- 支援郵件訂閱,有新的部落格就發送郵件提醒訂閱者
等等,這些對於其他 Web 系統來說,基本也都是必不可少的。
所以,HelloDjango-REST-framework-tutorial 教程項目會繼續以這樣的形式繼續下去:
圍繞著某一個功能進行開發,功能開發完成之後附帶輸出一篇詳細介紹功能實現原理和過程的教程。我希望 HelloDjango-REST-framework-tutorial 教程項目不僅僅是一個教學演示項目,也不僅僅是一個高品質、功能完備的 django 第三方部落格應用,而是兩者都是!
這些教程會及時通過 HelloGitHub 微信公眾號或者 追夢人物的部落格 進行更新,敬請關注!
新的開篇
此外,空有介面而不去使用,那麼介面就成了擺設。用戶不可能去看介面返回的原始數據,正確的使用方式應該是使用 JavaScript 框架去消費介面,將介面原始數據在漂亮的 UI 上展示,這就是所謂的前後端分離,大量公司都採用這種開發方式,如果你以找工作為目的而學習 django 的話,怎麼能不學習這種開發模式呢?
所以接下來,我們開始進入前端的世界。我們首先會通過一個輕鬆的實戰項目,學習 Vue 的基本開發、了解 Vue 的核心特性。然後,我們會使用 Vue 開發一個部落格前端 UI,數據則來自本教程開發的 RESTful 介面。
所以還是那句話,關注 HelloGitHub 微信公眾號以及 追夢人物的部落格,免費學習全棧開發。

關注公眾號加入我們


