一.前言
前面系統(tǒng)性地講解了django的基本知識胆屿,也實現(xiàn)了一個簡單的博客項目旁壮,雖然講解的不是很詳細,但是基本上所有的重點知識都有講解侈贷,從本節(jié)開始惩歉,我們以一個實戰(zhàn)項目來具體講解django的應(yīng)用,一些細節(jié)的知識點也會在項目中講解俏蛮。
二.準(zhǔn)備工作
首先撑蚌,我們需要明確需求,我們需要做的是一個在線教育平臺搏屑,參考現(xiàn)在騰訊課堂争涌、慕課網(wǎng)、英練幫等在線教育平臺辣恋,我們這個平臺主要包含用戶亮垫、課程、機構(gòu)三部分伟骨。用戶主要指的是學(xué)生饮潦,包含學(xué)生的基本信息、購買信息等底靠;課程包含課時害晦、素材、資源等暑中;機構(gòu)主要包括機構(gòu)的基本信息壹瘟、機構(gòu)下的老師信息等■猓基本結(jié)構(gòu)圖如下:
三.數(shù)據(jù)結(jié)構(gòu)設(shè)計
基于上面對產(chǎn)品需求的描述稻轨,我們將用戶信息設(shè)計如下:
主要包含基本信息、郵箱驗證雕凹、輪播圖三張表殴俱。
我們發(fā)現(xiàn)政冻,所有的表中均沒有id字端,這個是因為django會默認(rèn)增加一個primary key字端线欲,即pk明场,這個不需要我們手動添加。
另外李丰,有些表中關(guān)聯(lián)的有user苦锨、course等字端,其實這里不是string型趴泌,均是外鍵舟舒,這個在之后的代碼中會有體現(xiàn)。
基于上面的數(shù)據(jù)結(jié)構(gòu)的設(shè)計嗜憔,我們需要建很多張表秃励,django默認(rèn)使用的是sqlite的,現(xiàn)在這樣一個大型的項目吉捶,使用sqlite顯然不合適夺鲜,所以我們需要配置mysql的使用環(huán)境。
mac上mysql的安裝網(wǎng)上有詳細的教程帚稠,可以參考http://www.jb51.net/article/103841.htm
再此不再贅述谣旁。
下一節(jié)床佳,我們開始創(chuàng)建應(yīng)用并實現(xiàn)model滋早。