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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

原创 Django搭建個人博客:用戶的刪除

這一章將實現刪除用戶數據的功能。 權限與視圖 刪除用戶數據本身的邏輯並不複雜,但是會涉及到新的問題。 用戶數據是很多網站最重要的財產,確保用戶數據的安全是非常重要的。 前面學習的用戶登錄、退出、創建都是相對安全的操作;而刪除數據就很危

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

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

原创 Django搭建個人博客:用戶的登錄和登出

用戶管理 用戶數據可以說是大部分網站最重要的資產。用戶管理就是對用戶數據進行增刪改查等操作的功能,自然也就非常的重要了。 本章開始學習用戶管理的內容,首先從用戶登錄開始。 在Django中用app來區別不同功能的模塊,達到代碼隔離和複

原创 Django搭建個人博客:用戶的註冊

既然有登錄登出,那麼用戶的註冊肯定也是少不了的。 註冊表單類 用戶註冊時會用到表單來提交賬號、密碼等數據,所以需要寫註冊用的表單/userprofile/forms.py: /userprofile/forms.py ... #