Django是利用Python語言開發(fā)網(wǎng)站時(shí)的首選Web框架。本書循序漸進(jìn)地介紹了Django 2.0中各個(gè)功能模塊的實(shí)現(xiàn)與使用方法,并以“在線教育平臺”為例,講解了基于Django 2.0開發(fā)應(yīng)用的實(shí)用技能。此外,本書還介紹了Django項(xiàng)目的上線部署方法以及在網(wǎng)站實(shí)際開發(fā)過程中常用的第三方功能模塊。本書內(nèi)容實(shí)用性強(qiáng),案例豐富,側(cè)重于實(shí)戰(zhàn),與新技術(shù)結(jié)合緊密,可綜合提高讀者的Python Web編程能力。
本書可作為計(jì)算機(jī)相關(guān)專業(yè)的教材,也適合剛接觸或即將接觸Django的開發(fā)者使用,還可供具有Django開發(fā)經(jīng)驗(yàn)但還須進(jìn)一步提升實(shí)戰(zhàn)能力的讀者學(xué)習(xí)參考。
1.系統(tǒng)全面地介紹 Django 體系
? (1)深入講解 Django 三大核心,即模型、視圖、模板;
? (2)使用 Django 快速制作在線教育平臺;
? (3)學(xué)習(xí)并使用豐富的第三方應(yīng)用;
? (4)配合 Linux 實(shí)踐 Django 上線部署全過程。
2.豐富多樣的教學(xué)資料
? (1)配套素材及示例代碼;
? (2)每章課后作業(yè)及答案;
? (3)重難點(diǎn)內(nèi)容視頻講解。
3.隨時(shí)可測學(xué)習(xí)成果
? (1)每章提供“技能目標(biāo)”,助力讀者確定學(xué)習(xí)要點(diǎn);
? (2)課后作業(yè)輔助讀者鞏固階段性內(nèi)容;
? (3)課工場題庫助力在線測試。
肖睿,課工場創(chuàng)始人,北京大學(xué)教育學(xué)博士,北京大學(xué)軟件學(xué)院特約講師,北京大學(xué)學(xué)習(xí)科學(xué)實(shí)驗(yàn)室特約顧問。作為北大青鳥 Aptech 的聯(lián)合創(chuàng)始人,歷任學(xué)術(shù)總監(jiān)、研究院院長、公司副總裁等核心崗位,擁有20多年的IT職業(yè)教育產(chǎn)品管理和企業(yè)管理經(jīng)驗(yàn)。于2015年創(chuàng)辦課工場,兼任總經(jīng)理,旨在為大學(xué)生提供更可靠的 IT 就業(yè)教育及服務(wù)。
第 1章 Django基礎(chǔ) 1
任務(wù)1.1 了解網(wǎng)站基礎(chǔ) 2
1.1.1 網(wǎng)站的定義、組成及發(fā)展歷程 3
1.1.2 網(wǎng)站的分類 4
1.1.3 網(wǎng)站的開發(fā)流程 7
任務(wù)1.2 初識Django 8
1.2.1 什么是Django 8
1.2.2 Django開發(fā)環(huán)境搭建 10
任務(wù)1.3 體驗(yàn)第 一個(gè)Django項(xiàng)目 15
1.3.1 創(chuàng)建項(xiàng)目 15
1.3.2 創(chuàng)建應(yīng)用 16
1.3.3 輸出“Hello World” 18
1.3.4 Django項(xiàng)目配置 19
本章作業(yè) 22
第 2章 模型與數(shù)據(jù)庫 25
任務(wù)2.1 了解SQL基礎(chǔ)語句的用途 26
2.1.1 插入數(shù)據(jù) 27
2.1.2 刪除數(shù)據(jù) 27
2.1.3 修改數(shù)據(jù) 27
2.1.4 查詢數(shù)據(jù) 27
任務(wù)2.2 掌握模型與數(shù)據(jù)庫的使用方法 28
2.2.1 什么是ORM 28
2.2.2 構(gòu)建模型 28
2.2.3 模型操作 32
2.2.4 數(shù)據(jù)表的關(guān)系 34
2.2.5 模型繼承 38
本章作業(yè) 40
第3章 探究視圖 41
任務(wù)3.1 了解視圖的構(gòu)建 42
3.1.1 定義視圖 42
3.1.2 路由配置 44
3.1.3 HttpRequest與HttpResponse對象 46
3.1.4 上機(jī)訓(xùn)練 50
任務(wù)3.2 管理器Manager的使用 50
3.2.1 默認(rèn)管理器對象objects 51
3.2.2 自定義管理器Manager 53
任務(wù)3.3 通用視圖的使用 54
任務(wù)3.4 錯(cuò)誤視圖的使用 56
3.4.1 內(nèi)置錯(cuò)誤視圖 56
3.4.2 自定義錯(cuò)誤頁面 57
本章作業(yè) 59
第4章 深入模板 61
任務(wù)4.1 初識模板 62
4.1.1 什么是Django模板 62
4.1.2 定義模板 64
任務(wù)4.2 模板的使用 66
4.2.1 注釋 66
4.2.2 模板變量 66
4.2.3 模板標(biāo)簽 67
4.2.4 過濾器 73
4.2.5 上機(jī)訓(xùn)練 75
本章作業(yè) 76
第5章 admin后臺系統(tǒng) 77
任務(wù)5.1 使用admin管理后臺 78
5.1.1 初識admin管理后臺 78
5.1.2 admin管理后臺使用步驟 80
任務(wù)5.2 二次開發(fā)admin管理后臺 84
5.2.1 列表展示設(shè)置 84
5.2.2 admin后臺配置項(xiàng) 91
任務(wù)5.3 使用xadmin管理后臺 92
5.3.1 xadmin安裝 92
5.3.2 xadmin使用 93
5.3.3 xadmin配置 96
本章作業(yè) 98
第6章 高級應(yīng)用 101
任務(wù)6.1 使用Auth認(rèn)證系統(tǒng) 102
6.1.1 內(nèi)置User實(shí)現(xiàn)用戶管理 103
6.1.2 設(shè)置用戶權(quán)限 108
6.1.3 設(shè)置用戶組 109
任務(wù)6.2 緩存與狀態(tài)管理在項(xiàng)目中的應(yīng)用 110
6.2.1 Cache的使用 111
6.2.2 Session的使用 112
任務(wù)6.3 使用模型類進(jìn)行高階查詢 115
6.3.1 Q對象 115
6.3.2 F對象 116
6.3.3 高級過濾 116
任務(wù)6.4 使用第三方應(yīng)用快速開發(fā) 117
6.4.1 驗(yàn)證碼captcha 118
6.4.2 調(diào)試工具debug-toolbar 121
本章作業(yè) 124
第7章 項(xiàng)目實(shí)戰(zhàn)—制作在線教育平臺 127
任務(wù)7.1 在線教育平臺項(xiàng)目概述 128
7.1.1 需求概述 128
7.1.2 開發(fā)環(huán)境 131
7.1.3 覆蓋技能點(diǎn) 131
任務(wù)7.2 搭建項(xiàng)目 131
7.2.1 項(xiàng)目創(chuàng)建 131
7.2.2 基礎(chǔ)配置 133
7.2.3 模型類設(shè)計(jì) 135
任務(wù)7.3 開發(fā)功能模塊 137
7.3.1 制作網(wǎng)站首頁 137
7.3.2 制作課程詳情頁 138
7.3.3 制作課程章節(jié)頁 140
7.3.4 制作機(jī)構(gòu)中心頁 141
7.3.5 制作機(jī)構(gòu)課程頁 142
7.3.6 制作機(jī)構(gòu)講師頁 143
7.3.7 配置admin后臺系統(tǒng) 143
第8章 Django項(xiàng)目上線部署 149
任務(wù)8 項(xiàng)目上線部署 150
8.1 虛擬機(jī)安裝 150
8.2 升級Python 2.x到Python 3.x 152
8.3 項(xiàng)目上線配置 155
8.4 安裝Django 156
8.5 安裝uWSGI 157
8.6 安裝Nginx 160