做者:HelloGitHub-追夢人物html
咱們已經成功地開發了一個功能比較完備的我的博客,是時候來總結一下咱們的工做了。博客系列完整的源代碼地址:git
https://github.com/HelloGitHub-Team/HelloDjango-blog-tutorialgithub
在教程的前兩篇,咱們介紹瞭如何搭建 django 開發環境,如何建立 django 項目以及 django 應用,這是咱們進行 django 項目開發的基礎。web
第 三、4 篇:講了 django ORM 的基礎操做。ORM 是 django 核心中的核心,不只 django 自帶的應用底層全都依賴於 ORM,大部分使用 django 構建的應用基本也離不開 django ORM 的操做,因此可否熟練掌握 django 的 ORM API 決定了可否寫出高質量、高性能的 django 應用。數據庫
第 五、6 篇:講解了 django 基本的視圖函數,視圖函數的做用是接收一個 HTTP 請求,根據這個請求的意圖返回相應的 HTTP 響應。在這個請求處理的過程當中,一般都會涉及到使用 ORM 進行數據庫的增刪改查操做。django
第 7 篇:介紹了 django 的殺手鐗應用,開箱即用的 Admin 管理臺。咱們能夠經過這個管理臺直接對數據庫中的數據進行增刪改查操做。後端
第 九、10 篇:介紹了 Markdown 的使用,對於博客、技術論壇之類的應用,使用 Markdown 來撰寫內容是一個常見的需求。緩存
第 十二、13 篇:介紹瞭如何自定義模板標籤並使用它們。模板標籤用於 django 的模板系統中,用來生成 HTML 頁面。django 的模板系統自帶了大量的模板標籤。但若是自帶的標籤不知足需求,咱們就能夠拓展 django 模板系統的 API 來自定義模板標籤。安全
第 14 篇:咱們利用上述學習到的知識開發了一個獨立的 django 評論應用。這裏面咱們還初步接觸了表單的使用。django 的表單是對 HTML 表單的封裝,它在後臺完成數據校驗、清理等功能,並對非法的表單輸入返回給客戶端友好的錯誤提示。性能優化
第 1六、1七、1八、19:向你們介紹了運維方面的知識,包括如何在服務器上部署 django 應用,如何編寫自動化腳原本全自動部署,如何給網站開啓 HTTPS 以提升安全性。特別是使用 Docker 進行部署後,咱們把整個 django 部署的過程縮減到只需線上執行幾條命令就能完成,Docker 幫助咱們極大簡化了部署流程。
第 21 篇:咱們介紹了基於類的視圖和通用類視圖。以前說了,django 的視圖本質上是一個函數,它接收一個 HTTP 請求,返回一個 HTTP 響應。類視圖雖然是一個類,但這只是針對開發者而言,django 經過 Python 魔法將類轉化爲一個可被調用的函數。使用類的好處是,它容許被繼承,所以在某些狀況下能夠提升代碼的複用性。
第 22 篇:演示瞭如何在 Python 腳本里面獨立地使用 django 的 ORM。通常要使用 django 的 ORM 必須啓動整個 django 項目,而若是要在獨立的腳本中使用的話,就必須進行一些額外的設置。
第 23 篇:咱們介紹瞭如何使用 django 第三方庫,django 的強大不只在於它自身功能的完備程度,更在於其繁榮的社區。大量開發者在開源平臺發佈了不少優質的 django 拓展應用,涵蓋了 web 開發的方方面面。這裏咱們只介紹了一個分頁應用,更多應用你們能夠在 GitHub 經過搜索關鍵詞 django 進行探索。
第 2七、28 篇:咱們介紹了搜索功能的實現。一開始使用的是比較簡單的搜索方式,利用以前所學的 django 知識就能完成。不過爲了更好的搜索體驗,咱們進一步引入了 elasticsearch 這個專業的搜索服務來提供搜索功能,同時使用了一個 django 第三方庫 django-haystack 來將 elasticsearch 和 django 無縫對接。同時能夠看到,有了 Docker 容器技術,引入一個外部服務變得很是簡單。
第 2九、30、31 篇:咱們對博客補充了完善的單元測試,測試過程當中咱們發現了一些隱藏的 bug 並進行了修復,由此測試的重要性可見一斑。此外,爲了衡量測試的質量,咱們使用 coverage.py 對代碼測試覆蓋率進行了統計,越高的測試覆蓋率說明測試越充分,程序出現 bug 的概率也就越小。
如今,咱們已經有了一個功能比較完備的我的博客應用。並且,在測試的保障護航下,咱們能夠在不破壞現用功能的狀況下,輕鬆加入新的功能。
教程進行到這裏,HelloDjango 博客教程就要準備告一段落了,大部分 web 開發中的需求,你均可以經過教程中講到的知識點,結合 django 的官方文檔來實現。
Django 中還有不少值得介紹的地方,就拿博客來講,咱們還能夠作這些很酷的功能:
等等,這些對於其餘 Web 系統來講,基本也都是必不可少的。
因此,HelloDjango 博客項目會繼續以這樣的形式繼續下去:
圍繞着某一個功能進行開發,功能開發完成以後附帶輸出一篇詳細介紹功能實現原理和過程的教程。我但願 HelloDjango 博客項目不只僅是一個教學演示項目,也不只僅是一個高質量、功能完備的 django 第三方博客應用,而是二者都是!
這些教程會及時經過 HelloGitHub 微信公衆號和 追夢人物的博客 進行更新,敬請關注!
此外,雖然 HelloDjango 博客項目教程按期更新已經結束,但接下來我會開始以按期更新的方式向你們介紹如何 django-restframework + Vue 或者 React 這種更加現代化的先後端分離開發方式,大量公司都採用這種開發方式,若是你以找工做爲目的而學習 django 的話,怎麼能不學習這種開發模式呢?
HelloDjango-blogs 的教程暫時告一段落,全新的 HelloDjango-django-restframework 系列教程就要要從新揚帆起航了,你們敬請期待!
因此仍是那句話,敬請關注 HelloGitHub 微信公衆號以及 追夢人物的博客,免費學習 Django 全棧開發。
原文出處:https://www.cnblogs.com/xueweihan/p/12526557.html