學(xué)習(xí)本路線內(nèi)容之前,請(qǐng)先學(xué)習(xí)Python的基礎(chǔ)知識(shí)
其他路線:
符號(hào)表解釋:
可根據(jù)知識(shí)點(diǎn)前的符號(hào)按需選學(xué),并獲取知識(shí)點(diǎn)描述和學(xué)習(xí)資源。
必學(xué):核?知識(shí)點(diǎn),經(jīng)常?到。
建議學(xué):重要知識(shí)點(diǎn),專業(yè)??的基?。
?試重點(diǎn):經(jīng)常出現(xiàn)的?試知識(shí)點(diǎn)。
可有可?:邊緣區(qū)域,不是必須探索的地?。
知識(shí)描繪:知識(shí)點(diǎn)描述,快速理解。
學(xué)習(xí)資源:關(guān)聯(lián)的學(xué)習(xí)資源。
學(xué)習(xí)?標(biāo):階段性?標(biāo)。
學(xué)習(xí)路線:Web開發(fā)
1. 目標(biāo):開發(fā)在線商城
- 目標(biāo):開發(fā)一個(gè)簡單的在線商城,包括商品展示、購物車、訂單管理等功能,使用Django的ORM進(jìn)行數(shù)據(jù)庫操作。
2. Django框架
2.1 描述
- Django:是一個(gè)用于構(gòu)建Web應(yīng)用程序的高級(jí)Python Web框架。
2.2 資源
2.3 安裝Django
- 資源:安裝官方發(fā)布版
3. MVT 分層架構(gòu)
3.1 描述
- MVT:在Django中代表模型(Model),視圖(View)和模板(Template),類似于MVC(模型-視圖-控制器)模式。
3.2 組件
- 模型(Model):定義數(shù)據(jù)模型,與數(shù)據(jù)庫交互,處理數(shù)據(jù)的存儲(chǔ)和檢索。
- 視圖(View):處理用戶請(qǐng)求,從模型中獲取數(shù)據(jù),并將數(shù)據(jù)傳遞給模板進(jìn)行渲染。視圖負(fù)責(zé)業(yè)務(wù)邏輯的處理。
- 模板(Template):定義用戶界面的呈現(xiàn)方式,接收來自視圖的數(shù)據(jù),并生成最終的HTML響應(yīng)。
4. 模型與ORM
4.1 模型基礎(chǔ)
- 描述:Django提供了一個(gè)抽象的模型層,用于結(jié)構(gòu)化和操作網(wǎng)頁應(yīng)用程序的數(shù)據(jù)。
- 資源:模型基礎(chǔ)
4.2 ORM
- 描述:ORM代表“對(duì)象關(guān)系映射”,是一種編程技術(shù),用于在關(guān)系型數(shù)據(jù)庫和面向?qū)ο缶幊陶Z言之間建立映射關(guān)系。
5. 視圖與模板
5.1 視圖
- 功能:處理用戶請(qǐng)求,從模型中獲取數(shù)據(jù),并將數(shù)據(jù)傳遞給模板進(jìn)行渲染。
5.2 模板
- 功能:定義用戶界面的呈現(xiàn)方式,接收來自視圖的數(shù)據(jù),并生成最終的HTML響應(yīng)。
- 模板語法:學(xué)習(xí)Django模板的語法和功能。
- 靜態(tài)資源:管理靜態(tài)文件,如CSS和JavaScript文件。
6. 路由與Django Admin
6.1 路由
- 功能:定義URL與視圖函數(shù)之間的映射關(guān)系,將請(qǐng)求路由到特定的視圖函數(shù)。
6.2 Django Admin 管理工具
- 功能:提供強(qiáng)大的管理后臺(tái)工具,自動(dòng)生成用于管理數(shù)據(jù)庫模型的界面。
7. 中間件與測(cè)試
7.1 中間件
- 功能:在請(qǐng)求和響應(yīng)處理過程中執(zhí)行自定義操作,如CSRF保護(hù)、安全性、緩存、日志記錄等。
7.2 測(cè)試
- 功能:編寫單元測(cè)試和集成測(cè)試,確保應(yīng)用程序的穩(wěn)定性和正確性。
8. 會(huì)話與鑒權(quán)
8.1 會(huì)話
- 功能:跟蹤和存儲(chǔ)用戶狀態(tài)信息,如登錄狀態(tài)、購物車內(nèi)容等。
8.2 鑒權(quán)
- 功能:實(shí)現(xiàn)用戶身份驗(yàn)證、權(quán)限管理和訪問控制。
9. 文件上傳與高級(jí)特性
9.1 文件上傳
- 功能:允許用戶上傳文件,并使用Django的文件字段存儲(chǔ)和管理這些文件。
9.2 高級(jí)特性
- 分頁:將大量數(shù)據(jù)分成多個(gè)頁面以提高性能和用戶體驗(yàn)。
- 緩存:減輕數(shù)據(jù)庫負(fù)載并提高響應(yīng)速度。
- 序列化:將復(fù)雜的Python對(duì)象轉(zhuǎn)換為可傳輸?shù)臄?shù)據(jù)格式,如JSON或XML。
- 信號(hào):事件處理機(jī)制,允許應(yīng)用的不同部分之間進(jìn)行解耦和通信。
- Celery任務(wù)調(diào)度:異步執(zhí)行長時(shí)間運(yùn)行的任務(wù),提高應(yīng)用程序的性能和可擴(kuò)展性。
10. Restful API 開發(fā)
- Django REST framework:構(gòu)建API,創(chuàng)建可讀性強(qiáng)、易于維護(hù)的網(wǎng)絡(luò)接口。
11. 部署
- 部署:將開發(fā)好的網(wǎng)站放到服務(wù)器上,使人們能夠訪問。涉及配置服務(wù)器、數(shù)據(jù)庫和確保網(wǎng)站在線可用。
12. 項(xiàng)目實(shí)戰(zhàn)
- 實(shí)戰(zhàn):將所學(xué)應(yīng)用到實(shí)際項(xiàng)目中,包括設(shè)計(jì)、開發(fā)、測(cè)試和部署網(wǎng)站。
13. 前端基礎(chǔ)
13.1 HTML
- 描述:超文本標(biāo)記語言,用于構(gòu)建網(wǎng)頁的結(jié)構(gòu)。
- 資源:HTML入門課程>>>
13.2 CSS
- 描述:層疊樣式表,用于設(shè)置網(wǎng)頁的布局和樣式。
- 資源:CSS入門課程>>>
13.3 JavaScript
- 描述:一種腳本編程語言,用于實(shí)現(xiàn)網(wǎng)頁的交互性。
- 資源:JavaScript入門課程>>>
14. Flask框架
14.1 描述
- Flask:一個(gè)輕量級(jí)的Python Web應(yīng)用框架,用于快速構(gòu)建Web應(yīng)用程序。Flask適合用來寫一些簡單的項(xiàng)目和API接口。
14.2 資源