原创 Django搭建個人博客:使用django-ckeditor富文本編輯器

前面我們已經實現了用Markdown語法寫文章了。但是文章的評論用Markdown就不太合適了,你不能強求用戶也花時間去熟悉語法啊。另外評論中通常還有表情、帶顏色的字體等功能,這些也是Markdown不具備的。 因此富文本編輯器Django

原创 Django搭建個人博客:給文章加個漂亮的標題圖

現在雖然博客的功能大都實現了,但是界面還是比較樸素,特別是首頁的文章列表幾乎全是文字,看多了難免疲勞。因此,給每個文章標題配一張標題圖,不僅美觀,用戶也能通過圖片快速瞭解文章內容。實際上大部分社交網站也都是這麼幹的,畢竟人的天性就是懶,能看

原创 Django搭建個人博客:文章標籤功能

“標籤”是作者從文章中提取的核心詞彙,其他用戶可以通過標籤快速瞭解文章的關注點。每一篇文章的標籤可能都不一樣,並且還可能擁有多個標籤,這是與欄目功能不同的。 好在標籤功能也有優秀的三方庫:Django-taggit,省得自己動手設計了。快速

原创 Django搭建個人博客:設置文章的欄目

博客的文章類型通常不止一種:有時候你會寫高深莫測的技術文章,有時候又純粹只記錄一下當天的心情。 因此對文章的分類就顯得相當的重要了,既方便博主對文章進行分類歸檔,也方便用戶有針對性的閱讀。 而文章分類一個重要的途徑就是設置欄目。 欄目的模型

原创 Django搭建個人博客:基於類的視圖

說是完結,馬上又開始寫進階篇了。 本章不會爲博客項目增加新功能,但是也同樣重要,因爲我們要學習高逼格的基於類的視圖。 什麼是類視圖 前面章節中寫的所有視圖都是基於函數的,即def;而類視圖是基於類的,即class。 有編程基礎的同學都知道,

原创 Django搭建個人博客:結束和開始

教程看到這裏,你已經學會如下內容: 搭建開發環境 博文管理 用戶管理 發表評論 若干小功能 搭建簡單的小博客,以上的功能夠用了。 相信你的志向不止於此。畢竟程序員面試個個造火箭啊。 接下來學什麼 雖說Django已經入門了,但別激動,還

原创 Django搭建個人博客:在博文中發表評論

在沒有互聯網的年代,我們用日記來記錄每天的心得體會。小的時候我有一個帶鎖的日記本,生怕被別人看見裏面寫了啥,鑰匙藏得那叫一個絕。 現在時代變了,網絡版的日記本:博客,卻巴不得越多人看越好。 別人看完你寫的深度好文,難免也想高談闊論一番,這就

原创 Django搭建個人博客:渲染Markdown文章目錄

對會讀書的人來說,讀一本書要做的第一件事,就是仔細閱讀這本書的目錄。閱讀目錄可以對整體內容有所瞭解,並清楚地知道感興趣的部分在哪裏,提高閱讀質量。 博文也是同樣的,好的目錄對博主和讀者都很有幫助。更進一步的是,還可以在目錄中設置錨點,點擊標

原创 Django搭建個人博客:簡單搜索博客文章

不管是最新文章列表也好、最熱文章列表也罷,都是把所有的文章數據全部展示給了用戶。 但是如果用戶只關心某些特定類型的文章,抽取全部數據就顯得既不方便、又不效率了。 因此,給用戶提供一個搜索功能,提供給用戶感興趣的幾篇文章,就大有用處了。 準備

原创 Django搭建個人博客:根據瀏覽量對最熱文章排序

有了瀏覽量之後,文章受歡迎的程度就有了評價標準。隨之而來的就有根據瀏覽量對文章進行排序的需求,即顯示“最熱文章”。 現在你已經很熟悉MTV模式,不需要我囉嗦也能完成任務: 文章的模型已經有了,不需要寫Model了 寫一個視圖函數artic

原创 Django搭建個人博客:統計文章瀏覽量

文章瀏覽量是所有社交類網站所必備的數據,足以顯示其重要性了。 博主可以通過瀏覽量來評估某篇文章的受歡迎程度,讀者也能夠通過瀏覽量來篩選質量更高的文章。 然而,準確統計瀏覽量並不簡單: 某些類型的請求不應該統計爲瀏覽量,比如作者自己的瀏覽或

原创 Django搭建個人博客:文章分頁

隨着時間的推移(加上勤奮的寫作!),你的博客文章一定會越來越多。如果不進行處理,可能同一個頁面會擠上成百上千的文章,不美觀不說,還降低了頁面的反應速度。 這個時候就需要對文章進行分頁的處理。 利用輪子 寫一個完善的分頁功能是有些難度的,好在

原创 Django搭建個人博客:上傳頭像圖片

到目前爲止我們的博客處理的都是文字。現代互聯網早就進入了“讀圖”時代,圖片的維護、展示也就相當重要。 上一章中預留了avatar字段,用來保存用戶上傳的頭像,現在我們來實現這個功能。 必要的設置 圖片屬於一種媒體文件,它與靜態文件類似,需要

原创 Django搭建個人博客:擴展用戶信息

可能你已經發現了,Django自帶的User模型非常實用,以至於我們沒有寫用戶管理相關的任何模型。 但是自帶的User畢竟可用的字段較少。比方說非常重要的電話號碼、頭像等都沒有。解決的方法有很多,你可以不使用User,自己從零寫用戶模型;也

原创 Django搭建個人博客:重置用戶密碼

隨着技術的發展,驗證用戶身份的手段越來越多,指紋、面容、聲紋應有盡有,但密碼依然是最重要的手段。 互聯網處處都有密碼的身影,甚至變成了現代人的一種負擔。像筆者這樣的,動輒幾十個賬號密碼,忘記其中幾個簡直太正常了。 本章講如何幫助健忘症患者,