Django綜述

這個(gè)題目實(shí)在是有些大,如果主要介紹Django那又不如官方文檔詳細(xì),如果挑細(xì)節(jié)說(shuō)又顯得分類不夠明確枪汪。所以就寫一些個(gè)人對(duì)Django的理解吧涌穆。日后顯然是會(huì)填充更多內(nèi)容的。

這里先貼上 The Django Book雀久,開(kāi)始Django時(shí)必定先看的書宿稀。

以下文字摘自 The Django Book 第一章

Django 是從真實(shí)世界的應(yīng)用中成長(zhǎng)起來(lái)的,它是由 堪薩斯(Kansas)州 Lawrence 城中的一個(gè) 網(wǎng)絡(luò)開(kāi)發(fā)小組編寫的赖捌。 它誕生于 2003 年秋天祝沸,那時(shí) Lawrence Journal-World 報(bào)紙的 程序員 Adrian Holovaty 和 Simon Willison 開(kāi)始用 Python 來(lái)編寫程序。

當(dāng)時(shí)他們的 World Online 小組制作并維護(hù)當(dāng)?shù)氐膸讉€(gè)新聞?wù)军c(diǎn), 并在以新聞界特有的快節(jié)奏開(kāi)發(fā)環(huán)境中逐漸發(fā)展越庇。 這些站點(diǎn)包括有 LJWorld.com罩锐、Lawrence.com 和 KUsports.com, 記者(或管理層) 要求增加的特征或整個(gè)程序都能在計(jì)劃時(shí)間內(nèi)快速的被建立悦荒,這些時(shí)間通常只有幾天 或幾個(gè)小時(shí)唯欣。 因此,Adrian 和 Simon 開(kāi)發(fā)了一種節(jié)省時(shí)間的網(wǎng)絡(luò)程序開(kāi)發(fā)框架搬味, 這是在截止時(shí)間前能完成程序的唯一途徑境氢。

2005 年的夏天,當(dāng)這個(gè)框架開(kāi)發(fā)完成時(shí)碰纬,它已經(jīng)用來(lái)制作了很多個(gè) World Online 的站點(diǎn)萍聊。 當(dāng)時(shí) World Online 小組中的 Jacob Kaplan-Moss 決定把這個(gè)框架發(fā)布為一個(gè)開(kāi)源軟件。

使用Django半年時(shí)間悦析,看過(guò)各種人對(duì)其的評(píng)價(jià)寿桨,有一句話特別贊同:

Django適合用來(lái)搭建中型項(xiàng)目,太小型或者太大型都不合適强戴。

如果你只需要一個(gè)個(gè)人主頁(yè)亭螟,或者一個(gè)宣傳網(wǎng)站,又或者僅僅是用來(lái)炫H5技術(shù)的網(wǎng)站骑歹,那么Django一定不會(huì)是你的首選预烙。雖說(shuō)搭建Django也很快,但是我們先來(lái)看一下搭建Django后臺(tái)到顯示出你的html頁(yè)面的流程:

  1. 安裝Python
  2. 安裝Django
  3. 安裝數(shù)據(jù)庫(kù)(可選)
  4. 創(chuàng)建一個(gè)project
  5. 準(zhǔn)備好你的HTML頁(yè)面
  6. 編寫一個(gè)view函數(shù)道媚,選擇你的HTML頁(yè)面來(lái)渲染
  7. 修改urls.py扁掸,將view與路徑綁定
  8. 修改settings.py,綁定靜態(tài)文件路徑
  9. runserver! tada! 你看到你的頁(yè)面了

前兩步是所有Web框架都逃不開(kāi)的步驟(就像鐵匠至少得有錘子和鐵砧)最域,第3步是小型項(xiàng)目一定不會(huì)選擇的(如果一個(gè)項(xiàng)目使用到了數(shù)據(jù)庫(kù)谴分,我一定不會(huì)稱其小)镀脂,第4步大部分框架都會(huì)提供便利的腳本牺蹄。到此為止Django還是沒(méi)什么特別的,但是從第5步往下看薄翅。如果你想要一個(gè)新的頁(yè)面钞馁,你至少得分別做3件事:寫頁(yè)面虑省,寫view,綁定url僧凰。如果settings都還沒(méi)配置,那就是4件事熟丸,如果想把網(wǎng)站部署到網(wǎng)絡(luò)上训措,那靜態(tài)文件還有得可折騰的,不過(guò)這準(zhǔn)備在另一篇文章里再細(xì)說(shuō)光羞,這里先按下不表绩鸣。

3個(gè)步驟分別對(duì)應(yīng)3個(gè)不同的文件,如果你是個(gè)對(duì)workspace的清晰程度有極度潔癖的人(比如我)纱兑,那你還可能面對(duì)3個(gè)不同的存放位置呀闻。在最初的一個(gè)月里這三個(gè)文件讓我不知道出了多少次錯(cuò),然而我不過(guò)是想添加幾個(gè)頁(yè)面而已潜慎,為什么就不能前臺(tái)搞一下樣式后臺(tái)再搞一下就好了呢捡多?非得讓我后臺(tái)改2個(gè)文件才行。

當(dāng)然這可以說(shuō)只是熟練度的問(wèn)題铐炫,我承認(rèn)典奉,如果你有搭建Web后臺(tái)的經(jīng)驗(yàn)失受,現(xiàn)在想要新開(kāi)一個(gè)項(xiàng)目,那什么順手用什么,Tomcat+Spring都可以剪芥。但是對(duì)于一個(gè)沒(méi)什么經(jīng)驗(yàn)也不明確哪個(gè)組件要哪個(gè)組件不要的新手,我不會(huì)推薦Django拓瞪,因?yàn)榭赡茏屗x擇要不要數(shù)據(jù)庫(kù)都得折騰半天溶锭。選擇NodeJS會(huì)更好一些,畢竟JS誰(shuí)都會(huì)(手動(dòng)斜眼)乘综。

對(duì)于大型項(xiàng)目來(lái)說(shuō)憎账,Django也不是首選,不過(guò)現(xiàn)在也不乏用Django所寫的大型網(wǎng)站瘾带,比如知乎鼠哥,日PV也很高,那是因?yàn)樗麄兪菑囊粋€(gè)小網(wǎng)站不斷演變而來(lái)看政,舊代碼放在那朴恳,棄之不用的代價(jià)太高。但是大如12306的體量允蚣,絕不可能一開(kāi)始就選擇Django于颖。就我現(xiàn)在接觸到的范圍來(lái)解釋,Django的并發(fā)能力實(shí)在太弱嚷兔。簡(jiǎn)單來(lái)說(shuō)可能是Python這個(gè)語(yǔ)言的問(wèn)題森渐,PIL機(jī)制的存在讓多線程能力比較弱做入,不過(guò)如果要深入下去那可以說(shuō)的內(nèi)容還是很多的,以后另開(kāi)一篇再來(lái)說(shuō)吧同衣。

所以Django寫小項(xiàng)目有點(diǎn)小題大作竟块,寫大項(xiàng)目有點(diǎn)力不從心,但是不能說(shuō)這是一個(gè)不優(yōu)秀的框架耐齐,相反這是一個(gè)優(yōu)秀到不行的框架浪秘。Django的ORM實(shí)在是能夠幫開(kāi)發(fā)者省去很多時(shí)間,同樣省時(shí)間的還有一套完整的authentication模塊埠况。之前所說(shuō)的三個(gè)步驟對(duì)于中型項(xiàng)目來(lái)說(shuō)又變成了優(yōu)勢(shì)耸携,因?yàn)榻Y(jié)構(gòu)不會(huì)更復(fù)雜了,無(wú)論urls再怎么寫辕翰,view再怎么拆分夺衍,始終都是一份html template(這是指Django的template),一份view喜命,一份url沟沙。對(duì)于重復(fù)的機(jī)械的編寫新頁(yè)面一事來(lái)說(shuō),不會(huì)出現(xiàn)復(fù)雜度爆炸的情況渊抄。而做web應(yīng)用不外乎就是這些事尝胆。自然web開(kāi)發(fā)有趣的事也有很多,不過(guò)那又是另一個(gè)話題了护桦。

所以總的來(lái)說(shuō)Django是一個(gè)很趁手的工具含衔,雖然有各種各樣的缺點(diǎn),但多少都有解決辦法二庵,并且作為一款開(kāi)源框架它也在不斷自我完善贪染,感謝整個(gè)社區(qū)的貢獻(xiàn)。所以無(wú)論哪一個(gè)公司拿它來(lái)做核心工具催享,那都是OK的杭隙。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市因妙,隨后出現(xiàn)的幾起案子痰憎,更是在濱河造成了極大的恐慌,老刑警劉巖攀涵,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件铣耘,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡以故,警方通過(guò)查閱死者的電腦和手機(jī)蜗细,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人炉媒,你說(shuō)我怎么就攤上這事踪区。” “怎么了吊骤?”我有些...
    開(kāi)封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵缎岗,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我白粉,道長(zhǎng)密强,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任蜗元,我火速辦了婚禮,結(jié)果婚禮上系冗,老公的妹妹穿的比我還像新娘奕扣。我一直安慰自己,他們只是感情好掌敬,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布惯豆。 她就那樣靜靜地躺著,像睡著了一般奔害。 火紅的嫁衣襯著肌膚如雪楷兽。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天华临,我揣著相機(jī)與錄音芯杀,去河邊找鬼。 笑死雅潭,一個(gè)胖子當(dāng)著我的面吹牛揭厚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播扶供,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼筛圆,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了椿浓?” 一聲冷哼從身側(cè)響起太援,我...
    開(kāi)封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎扳碍,沒(méi)想到半個(gè)月后提岔,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡左腔,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年唧垦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片液样。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡振亮,死狀恐怖巧还,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情坊秸,我是刑警寧澤麸祷,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站褒搔,受9級(jí)特大地震影響阶牍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜星瘾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一走孽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧琳状,春花似錦磕瓷、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至翎承,卻和暖如春硕盹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背叨咖。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工瘩例, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人芒澜。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓仰剿,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親痴晦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子南吮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,285評(píng)論 25 707
  • Refer to: www.threemeal.com/blog/12/ 中間件 中間件是一個(gè)鉤子框架,它們可以介...
    蘭山小亭閱讀 16,504評(píng)論 9 165
  • 2016年8月9日 今天抽到星幣6誊酌,兩個(gè)下跪的人部凑,一個(gè)商人模樣的人拿著天平在施舍錢財(cái),看著好別扭啊碧浊,有那么缺錢嗎涂邀?...
    LULU魯魯閱讀 245評(píng)論 0 0
  • 1 櫥窗道具過(guò)于擁擠;撤掉最長(zhǎng)的那個(gè)箱锐;另外模特服裝參考陳列指引進(jìn)行調(diào)整 流水臺(tái)申請(qǐng)下 流水臺(tái)專用的價(jià)格簽比勉; 調(diào)整坐...
    Holiday澈閱讀 209評(píng)論 0 0
  • 10月假期歸來(lái),閑來(lái)無(wú)事在超聲室和軍軍哥、翟翟聊天浩聋,突然覺(jué)得做個(gè)超聲吧观蜗,看看月經(jīng)期快到了嗎?那么努力的要寶寶但一直...
    不貪睡的牛閱讀 230評(píng)論 0 0