2011年8月30日 星期二

Python的得力助手~django初試啼聲

Django是一種MTV架構的框架,呃──如果你想google的話,用MVC或許資料會比較多。

這個東西要用來幹嘛呢?

首先我們要先從網站的設計講起。
從前從前~網站的設計都是採取靜態的設計。

也就是說,你網站寫好一個一個的網頁,然後放在網路上給別人看。

就只是這樣,沒辦法跟瀏覽的人互動




但是時代越來越進步啦,有許多的技術開始被研發出來。

我們的網站開始有辦法根據使用者的不同,而給予不同的反應,進而產生互動,不再是以前死板的網頁。

所以我們稱之為互動式網頁。



不過這麼一來,新的問題又產生了。

那就是程式碼的架構問題

以前的靜態網頁,你可以把資料寫死在網頁上

但是現在的互動式網頁,網站會根據使用者的選擇,到資料庫中去撈資料出來

這樣的網頁一多,資料庫的程式碼、網頁的程式碼、模組的程式碼通通混在一起,要修改或維護都變成一件很困難的事情

所以有人就想到了,為什麼不把這些程式碼給分開來呢?


資料庫歸資料庫管;模組歸模組管;網頁歸網頁管,大家皆大歡喜。
這就是MVC的由來。

M指的就是Model,處理資料庫轉到展示介面的資料。
V指的就是View,也就是一個網站的外觀,負責展示後端送過來的資料。
C指的就是Controller,處理的核心部份,負責哪個資料該送到哪種view


但是Django的架構稍有不同,它採取的是MTV架構。

分別是Model、Template、View,基本上來說是有差異的。

但是你要問我差異在哪,我也說不出來。

這可能要再更深入的使用之後才知道。

在這裡,我只是就我所知粗淺地講解一下,讓不知道何謂MVC的人有個大概的暸解。
真正想要深入探討的話,還請自行尋找相關資料。



下面的投影片是我之前向同學說明實作django專案時所作出來的。

由於是給自己人看的,所以相當的隨意。

不過還是有一點參考價值,提供給想進一步認識django的人作個參考。
Django留言版


由於GAE的函式庫中已經有附帶django,以後會在多作介紹,所以我在這邊就不多費唇舌了。
Hope you like it!

後記
這篇跟之前的文章比起來,相對的短上很多。

因為這篇算是一個過渡到在gae上設置django的文章,我不太想浪費時間在上面。

但是又覺得如果沒有一點認識的話,直接跳django好像不太好,所以還是把這篇生出來了。

這麼說對Django很不好意思,因為django在python上其實算是一個老牌子的Framework。

真的研究起來,也是要費上一番功夫。

所以在這裡說一聲,大家不要小看了它喔!

0 comments:

張貼留言