天天看點

Django開發自己的部落格系統

好久之前就想做一下自己的部落格系統了,但是在網上查了查好像是需要會一些Node.js的相關知識,而且還要安裝辣麼多的庫什麼的,就不想碰了。但是我遇到了Django這麼一款神器,沒想到我的部落格系統就這麼建立起來了。雖然是最基礎的類型。但是也算是成功了,這篇部落格比較适合對Django有了一定了解的童鞋,如果是新手的話,建議先看一下django的基礎知識點再來做實驗,這樣效率更高!

好了,話不多說,開始吧。

建立項目及應用

搭建架構的意思,就是安裝Django以及做好相關的配置。因為我是在PyCharm下進行建立的,是以工具代替我做了很多事情。但是底層也無非是下面幾行代碼:

建立資料庫及底層模型

我這裡簡單的以預設的sqlite3資料庫作為了我的部落格系統的資料庫了,當然你也可以自己制定需要的資料庫,一般來說sqlite3都能滿足需求。在setting.py裡面可以這樣進行設定。

建好了資料庫,接下來就是模型的建立了。因為我建立的是部落格系統,是以必不可少的要釋出關于部落格的内容,于是需要有标題,内容,釋出時間這些屬性,詳情如models.py檔案

由于需要管理者對釋出的部落格進行管理,是以我們要對釋出的部落格設定一個管理模型,

是以整個models.py檔案裡面就應該是這樣的了。

接下來,就是同步一下資料庫和模型之間的聯系了。如果不做同步操作的話,就很有可能報出

<code>django.db.utils.OperationalError: unable to open database file</code>

而且這裡也是很重要的一個環節。那就是關于Django版本的問題,我之前就在這上面栽過一次。

其實前面的步驟而言,我們已經是完成了model這個子產品的功能了,接下來就是做好視圖的映射就可以了。

V(views.py)視圖層

我們需要在這個檔案裡面定義好底層的邏輯處理。這決定着要傳回給使用者一個什麼樣的response。至于采用哪種渲染方式,大家就不要在這上面浪費不必要的時間了。render_to_response就足夠了。

這裡面用到了模闆檔案,還傳給了模闆一個清單類型的參數,這些我們待會再叙。

C(controller)urls.py

可以說這個檔案将Django各部分松耦合的功能銜接到了一起,完成了整個項目的運轉的非核心的核心了,是關于如何映射的邏輯的處理。接下來我們就将我們的部落格系統設定一下吧。

好了,這次我們在完成了admin管理者使用者的設定之後,就可以運作我們的程式了。

python manage.py runserver

出現了:

這時就可以在浏覽器中輸入

<code>http://127.0.0.1:8000/admin</code>,登陸成功後可以點選下面的Blog Posts編輯博文了。然後點選SAVE 按鈕,就可以釋出我們的部落格。接下來在浏覽器中輸入

<code>http://127.0.0.1:8000/myBlogs/</code> 通路我們的部落格系統了。

這樣就實作了我們的部落格系統的建立了。但是由于沒有添加樣式,是以看起來不是很好看,是以我們要添加以下模闆的樣式。

接着剛才的繼續,關于模闆,這裡面可謂是有着很深的設計哲學。了解過的大家肯定都會有感觸,我就不多說了。

接下來就為我們的部落格系統設定一下模闆吧。

父模闆base.html

按照django對模闆的繼承設定,我們可以制作一個父模闆。如下:

然後就是子模闆BlogTemplate.html

需要注意的就是模闆中的模闆标簽以及模闆變量都應該與views.py檔案對應的函數中的字典變量相一緻,否則django雖然不會報錯,但也是不會顯示資料的。

接下來重新整理一下,輸入<code>http://127.0.0.1:8000/admin/</code>

點選add按鈕,開始添加你的博文吧。

Django開發自己的部落格系統
Django開發自己的部落格系統

然後在浏覽器中輸入

<code>http://127.0.0.1:8000/myBlogs/</code>.你就可以看到你的部落格清單了,如圖

Django開發自己的部落格系統

大家可能已經看到了,問題就出在點選标題沒有進入到相關的詳情頁面,那是因為還沒有添加這個功能呢。(^__^) 嘻嘻……

今天一起做了一個簡單的部落格系統,雖然外觀看起來并不是很好看,但是内容什麼的差不多就是這樣了。還有很多的地方需要完善。

有興趣的朋友可以私信讨論或者在下面發評論哦,大家一起學習。