中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >>
Django 3項目實例精解

包郵 Django 3項目實例精解

出版社:清華大學出版社出版時間:2021-06-01
開本: 其他 頁數: 482
中 圖 價:¥93.9(6.3折) 定價  ¥149.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

Django 3項目實例精解 版權信息

  • ISBN:9787302581840
  • 條形碼:9787302581840 ; 978-7-302-58184-0
  • 裝幀:一般膠版紙
  • 冊數:暫無
  • 重量:暫無
  • 所屬分類:>>

Django 3項目實例精解 本書特色

Django是一個功能強大的Python Web框架,支持快速開發過程及簡潔、實用的設計方案。無論是對于初學者還是專家級程序員,這一特點頗具吸引力。 《Django 3項目實例精解》將引領讀者學習專業Web應用程序的開發流程。除框架知識外,《Django 3項目實例精解》還將講解如何將其他較為流行的技術整合至Django項目中。 《Django 3項目實例精解》將討論真實應用程序的構建過程、常見問題的處理,并逐步實現多種*佳實踐 方案。 在閱讀完《Django 3項目實例精解》后,讀者將能夠理解Django的工作方式,以及如何打造具有實用性的高級Web應用程序。

Django 3項目實例精解 內容簡介

《Django 3項目實例精解》詳細闡述了與Django 3.0開發相關的基本解決方案,主要包括構建博客應用程序、利用不錯特性完善博客程序、擴展博客應用程序、構建社交型網站、共享網站中的內容、跟蹤用戶活動、構建在線商店、管理支付操作和訂單、擴展在線商店應用程序、打造網絡教學平臺、渲染和緩存內容、構建API、搭建聊天服務器、部署項目等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學用書和參考手冊。

Django 3項目實例精解 目錄

第1章 構建博客應用程序 1

1.1 安裝Django 1

1.1.1 創建隔離的Python環境 2

1.1.2 利用pip安裝Django 3

1.2 創建**個項目 3

1.2.1 運行開發服務器 5

1.2.2 項目設置 7

1.2.3 項目和應用程序 8

1.2.4 創建應用程序 8

1.3 設計博客數據方案 9

1.3.1 激活應用程序 11

1.3.2 設置并使用遷移方案 11

1.4 針對模型創建管理站點 13

1.4.1 創建超級用戶 13

1.4.2 Django管理站點 14

1.4.3 向管理站點中添加模型 15

1.4.4 定制模型的顯示方式 17

1.5 與QuerySet和管理器協同工作 18

1.5.1 創建對象 19

1.5.2 更新對象 20

1.5.3 檢索對象 20

1.5.4 刪除對象 22

1.5.5 評估QuerySet 22

1.5.6 創建模型管理器 22

1.6 構建列表和詳細視圖 23

1.6.1 生成列表和視圖 24

1.6.2 向視圖添加URL路徑 25

1.6.3 模型的標準URL 26

1.7 創建視圖模板 27

1.8 添加分頁機制 30

1.9 使用基于類的視圖 33

1.10 本章小結 34

第2章 利用高級特性完善博客程序 35

2.1 通過電子郵件共享帖子 35

2.1.1 使用Django創建表單 36

2.1.2 處理視圖中的表單 37

2.1.3 利用Django發送郵件 38

2.1.4 渲染模板中的表單 41

2.2 構建評論系統 44

2.2.1 構建模型 44

2.2.2 創建模型中的表單 46

2.2.3 處理視圖中的ModelForms 47

2.2.4 向帖子詳細模板中添加評論 49

2.3 添加標簽功能 52

2.4 根據相似性檢索帖子 58

2.5 本章小結 60

第3章 擴展博客應用程序 61

3.1 創建自定義模板標簽和過濾器 61

3.1.1 自定義模板標簽 61

3.1.2 自定義模板過濾器 66

3.2 向站點添加網站地圖 69

3.3 創建帖子提要 72

3.4 向博客中添加全文本搜索功能 74

3.4.1 安裝PostgreSQL 75

3.4.2 簡單的查詢操作 76

3.4.3 多字段搜索 76

3.4.4 構建搜索視圖 77

3.4.5 詞干提取和排名 79

3.4.6 加權查詢 81

3.4.7 利用三元相似性進行搜索 81

3.4.8 其他全文本搜索引擎 82

3.5 本章小結 82

第4章 構建社交型網站 83

4.1 創建社交型網站 83

4.2 使用Django驗證框架 84

4.2.1 構建登錄視圖 85

4.2.2 使用Django驗證視圖 90

4.2.3 登錄和注銷視圖 91

4.2.4 修改密碼視圖 96

4.2.5 重置密碼視圖 98

4.3 用戶注冊和用戶配置 104

4.3.1 用戶注冊 104

4.3.2 擴展用戶模型 107

4.3.3 使用自定義用戶模型 113

4.3.4 使用消息框架 113

4.4 構建自定義驗證后端 116

4.5 向站點中添加社交網站驗證 118

4.5.1 通過HTTPS運行開發服務器 119

4.5.2 基于Facebook的驗證 121

4.5.3 基于Twitter的驗證 126

4.5.4 基于Google的驗證 128

4.6 本章小結 134

第5章 共享網站中的內容 135

5.1 構建圖像書簽網站 135

5.1.1 構建圖像模型 136

5.1.2 生成多對多關系 137

5.1.3 在管理站點中注冊圖像模型 138

5.2 發布其他站點中的內容 139

5.2.1 清空表單字段 139

5.2.2 覆寫ModelForm的save()方法 140

5.2.3 利用jQuery構建書簽工具 145

5.3 創建圖像的細節視圖 152

5.4 利用easy-thumbnails生成圖像縮略圖 155

5.5 利用jQuery添加AJAX操作 156

5.5.1 加載jQuery 157

5.5.2 AJAX請求中的跨站點請求偽造 158

5.5.3 利用jQuery執行AJAX請求 159

5.6 針對視圖創建自定義裝飾器 163

5.7 向列表視圖中添加AJAX分頁機制 164

5.8 本章小結 169

第6章 跟蹤用戶活動 171

6.1 構建關注系統 171

6.1.1 利用中間模型創建多對多關系 171

6.1.2 針對用戶配置創建列表和詳細視圖 174

6.1.3 構建AJAX視圖以關注用戶 179

6.2 構建通用活動流應用程序 181

6.2.1 使用contenttypes框架 182

6.2.2 向模型中添加通用關系 183

6.2.3 避免活動流中的重復內容 186

6.2.4 向活動流中添加用戶活動 187

6.2.5 顯示活動流 188

6.2.6 優化涉及關系對象的QuerySet 188

6.2.7 針對操作活動創建模板 189

6.3 利用信號實現反規范化計數 192

6.3.1 與信號協同工作 192

6.3.2 應用程序配置類 194

6.4 利用Redis存儲數據項視圖 196

6.4.1 安裝Redis 196

6.4.2 結合Python使用Redis 198

6.4.3 將數據視圖存儲于Redis中 199

6.4.4 將排名結果存儲于數據庫中 200

6.4.5 Redis特性 203

6.5 本章小結 203

第7章 構建在線商店 205

7.1 創建在線商店項目 205

7.1.1 創建商品目錄模型 206

7.1.2 注冊管理站點上的目錄模型 208

7.1.3 構建目錄視圖 210

7.1.4 創建目錄模板 212

7.2 創建購物車 216

7.2.1 使用Django會話 217

7.2.2 會話設置 217

7.2.3 會話過期 218

7.2.4 將購物車存儲于會話中 219

7.2.5 創建購物車視圖 223

7.2.6 針對購物車創建上下文處理器 230

7.3 注冊客戶訂單 232

7.3.1 創建訂單模型 232

7.3.2 在管理站點中包含訂單模型 234

7.3.3 創建客戶訂單 235

7.4 利用Celery啟動異步任務 240

7.4.1 安裝Celery 240

7.4.2 安裝RabbitMQ 240

7.4.3 向項目中添加Celery 241

7.4.4 向應用程序中添加異步任務 242

7.4.5 監視Celery 244

7.5 本章小結 244

第8章 管理支付操作和訂單 245

8.1 整合支付網關 245

8.1.1 創建Braintree沙箱賬號 245

8.1.2 安裝Braintree Python模塊 247

8.1.3 集成支付網關 247

8.1.4 使用托管字段集成Braintree 249

8.1.5 支付的測試操作 255

8.1.6 上線 257

8.2 將訂單導出為CSV文件 257

8.3 利用自定義視圖擴展管理站點 260

8.4 動態生成PDF發票 265

8.4.1 安裝WeasyPrint 265

8.4.2 創建PDF模板 265

8.4.3 顯示PDF文件 267

8.4.4 通過電子郵件發送PDF文件 270

8.5 本章小結 273

第9章 擴展在線商店應用程序 275

9.1 創建優惠券系統 275

9.1.1 構建優惠券模型 276

9.1.2 在購物車中使用優惠券 278

9.1.3 在訂單中使用優惠券 284

9.2 添加國際化和本地化機制 286

9.2.1 Django的國際化處理 286

9.2.2 項目的國際化 288

9.2.3 翻譯Python代碼 290

9.2.4 翻譯模板 295

9.2.5 使用Rosetta翻譯接口 299

9.2.6 模糊翻譯 302

9.2.7 國際化的URL路徑 302

9.2.8 切換語言 304

9.2.9 利用django-parler翻譯模塊 306

9.2.10 本地化格式 314

9.2.11 使用django-localflavor驗證表單字段 315

9.3 構建推薦引擎 316

9.4 本章小結 324

第10章 打造網絡教學平臺 325

10.1 設置網絡教學項目 325

10.2 構建課程模型 326

10.2.1 在管理站點中注冊模型 328

10.2.2 使用固定文件提供模型的初始數據 329

10.3 創建包含多樣化內容的模型 332

10.3.1 使用模型繼承機制 332

10.3.2 創建內容模型 334

10.3.3 創建自定義模型字段 337

10.3.4 向模塊和內容對象中添加順序機制 338

10.4 創建CMS 343

10.4.1 添加認證系統 343

10.4.2 創建認證模板 343

10.4.3 設置基于類的視圖 346

10.4.4 針對基于類的視圖使用混合類 347

10.4.5 分組和權限 349

10.4.6 限制訪問基于類的視圖 351

10.5 管理課程模塊和內容 356

10.5.1 針對課程模塊使用表單集 357

10.5.2 向課程模塊中添加內容 361

10.5.3 管理模塊和內容 366

10.5.4 對模塊和內容重排序 370

10.6 本章小結 374

第11章 渲染和緩存內容 375

11.1 顯示課程 375

11.2 添加學生注冊機制 380

11.2.1 創建學生注冊視圖 381

11.2.2 注冊課程 383

11.3 訪問課程內容 387

11.4 渲染不同內容的類型 390

11.5 使用緩存框架 393

11.5.1 有效的緩存后端 394

11.5.2 安裝Memcached 394

11.5.3 緩存設置 395

11.5.4 向項目中添加Memcached 395

11.5.5 監控Memcached 396

11.5.6 緩存級別 397

11.5.7 使用底層緩存API 397

11.5.8 緩存動態數據 399

11.5.9 緩存模板片段 400

11.5.10 緩存視圖 402

11.5.11 使用每個站點緩存 402

11.6 本章小結 403

第12章 構建API 405

12.1 構建RESTful API 405

12.1.1 安裝Django REST框架 406

12.1.2 定義序列化器 407

12.1.3 理解解析器和渲染器 408

12.1.4 構建列表和詳細視圖 409

12.1.5 創建嵌套序列化器 412

12.1.6 構建自定義視圖 413

12.1.7 處理身份驗證 414

12.1.8 向視圖中添加權限 415

12.1.9 創建視圖集和路由器 417

12.1.10 向視圖集添加附加操作 418

12.1.11 創建自定義權限 419

12.1.12 序列化課程內容 420

12.1.13 使用RESTful API 422

12.2 本章小結 425

第13章 搭建聊天服務器 427

13.1 創建聊天應用程序 427

13.1.1 實現聊天室視圖 428

13.1.2 禁用站點緩存 430

13.2 基于Channels的實時Django 431

13.2.1 基于ASGI的異步應用程序 431

13.2.2 基于Channels的請求/響應周期 431

13.3 安裝Channels 433

13.4 編寫使用者 435

13.5 路由機制 436

13.6 實現WebSocket客戶端 437

13.7 啟用通道層 442

13.7.1 通道和分組 443

13.7.2 利用Redis設置通道層 443

13.7.3 更新使用者以廣播消息 444

13.7.4 將上下文添加至消息中 448

13.8 調整使用者使其處于完全異步狀態 451

13.9 集成聊天應用程序和視圖 453

13.10 本章小結 454

第14章 部署項目 455

14.1 創建產品環境 455

14.1.1 針對多種環境管理設置內容 455

14.1.2 使用PostgreSQL 458

14.1.3 項目檢查 458

14.1.4 通過WSGI為Django提供服務 459

14.1.5 安裝uWSGI 459

14.1.6 配置uWSGI 459

14.1.7 安裝NGINX 462

14.1.8 產品環境 463

14.1.9 配置NGINX 463

14.1.10 向靜態和媒體數據集提供服務 465

14.1.11 基于SSL/TLS的安全連接 467

14.1.12 針對Django Channels使用Daphne 472

14.1.13 使用安全的WebSocket連接 473

14.1.14 將Daphne包含于NGINX配置中 473

14.2 創建自定義中間件 476

14.2.1 創建子域名中間件 477

14.2.2 利用NGINX向多個子域名提供服務 479

14.3 實現自定義管理命令 479

14.4 本章小結 482



展開全部

Django 3項目實例精解 節選

第4章 構建社交型網站 第3章介紹了如何創建網站地圖和摘要,并對blog應用程序構建搜索引擎。本章將開發一個社交應用程序,這意味著,用戶可加入在線平臺,并通過共享內容彼此交互。后續章節將重點討論如何構建圖像共享平臺。用戶將能夠對互聯網上的圖像添加書簽,且彼此間共享內容。除此之外,用戶還可查看所關注用戶在平臺上的活動,并對共享圖像點贊或取消點贊。 本章將介紹如何為用戶創建登錄、注銷、編輯以及密碼重置等功能。此外,本章還將學習如何設置用戶的自定義配置文件,并向網站中添加驗證機制。 本章主要涉及以下內容: q 使用Django授權框架。 q 創建用戶注冊視圖。 q 利用自定義配置模型擴展用戶模型。 q 利用Python Social Auth添加授權機制。 下面將開始構建新項目。 4.1 創建社交型網站 本節將介紹如何創建社交型應用程序,用戶可以此共享他們在互聯網中搜索的圖片。針對該項目,需要設置以下元素: q 用戶驗證系統,以實現注冊、登錄、配置文件的編輯以及密碼的修改和重置等操作。 q 關注系統,以使站點中的用戶間可彼此查看。 q 顯示共享圖片,并實現用戶的標簽工具,進而共享來自任意網站的圖片。 q 每名用戶的操作流,可以使用戶查看所關注用戶的上傳內容。 本章將對此進行逐一討論。 打開終端,使用下列命令創建項目虛擬環境并激活該項目: mkdir env python3 -m venv env/bookmarks source env/bookmarks/bin/activate Shell提示符將顯示處于活動狀態下的虛擬環境,如下所示: (bookmarks)laptop:~ zenx$ 利用下列命令在虛擬環境下安裝Django: pip install "Django==3.0.*" 運行下列命令并創建新項目: django-admin startproject bookmarks 在創建了初始項目結構后,通過下列命令查看項目字典,并創建名為account的新應用程序。 cd bookmarks/ django-admin startapp account 注意,這里應激活項目中的新應用程序,也就是說,將其添加至settings.py文件中的INSTALLED_APPS設置中,并在其他安裝后的應用程序之前將其置于INSTALLED_ APPS列表中,如下所示: INSTALLED_APPS = [ 'account.apps.AccountConfig', # ... ] 后面將定義Django的驗證模板。通過在INSTALLED_APPS設置中放置當前應用程序,可確保驗證模板在默認狀態下予以使用,而非其他應用程序中的驗證模板。Django根據應用程序在INSTALLED_APPS設置中的出現順序查找模板。 運行下列命令,將數據庫與INSTALLED_APPS設置中包含的默認應用程序模型同步: python manage.py migrate 隨后將會看到,全部初始狀態下的Django數據庫遷移均已投入使用。下面將通過Django的驗證系統框架構建項目的驗證系統。 4.2 使用Django驗證框架 Django包含了內置的驗證框架,并可處理用戶驗證、會話、許可權限以及用戶組。驗證系統包含了常見用戶行為的視圖,如登錄、注銷、密碼修改以及密碼重置。 驗證框架位于django.contrib.auth中,其他Django contrib數據包也可對此加以使用;貞浺幌,第1章中已經使用了驗證框架,并生成了blog應用程序的超級用戶以訪問管理站點。 當使用startproject命令創建新的Django項目時,驗證框架包含在項目的默認設置中,包括django.contrib.auth應用程序,以及下列兩個項目MIDDLEWARE設置中的中間件類。 q AuthenticationMiddleware:使用會話將用戶與請求關聯起來。 q SessionMiddleware:處理請求間的當前會話。 中間件表示為一個類,其中包含了一些方法,可在請求或響應階段以全局方式被執行。我們將在多種場合下使用到中間件類。此外,第14章還將學習如何創建自定義中間件。 驗證框架涵蓋了下列模塊: q User表示包含基本字段的用戶模塊,該模塊的主要字段包括username、password、email、first_name、last_name以及is_active。 q Group表示分組模塊,以對用戶進行分類。 q Permission表示用戶或分組標記,并執行特定的操作。 除此之外,該框架還包含了默認的驗證視圖,以及供后續操作使用的表單。 4.2.1 構建登錄視圖 本節將使用Django驗證框架使得用戶可以登錄當前網站。對應的視圖將執行下列操作,從而實現用戶登錄。 (1)通過發布表單獲得用戶名和密碼。 (2)利用存儲于數據庫中的數據對用戶進行驗證。 (3)檢查用戶是否屬于活動狀態。 (4)用戶登錄網站并啟動驗證會話。 下面首先創建登錄表單。在account應用程序目錄中創建新的forms.py文件,并添加下列代碼行: from django import forms class LoginForm(forms.Form): username = forms.CharField() password = forms.CharField(widget=forms.PasswordInput)

商品評論(0條)
暫無評論……
書友推薦
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 真空泵维修保养,普发,阿尔卡特,荏原,卡西亚玛,莱宝,爱德华干式螺杆真空泵维修-东莞比其尔真空机电设备有限公司 | 旋转/数显粘度计-运动粘度测定仪-上海平轩科学仪器 | 天津市能谱科技有限公司-专业的红外光谱仪_红外测油仪_紫外测油仪_红外制样附件_傅里叶红外光谱技术生产服务厂商 | 昆明挖掘机修理厂_挖掘机翻新再制造-昆明聚力工程机械维修有限公司 | 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 | 湖南印刷厂|长沙印刷公司|画册印刷|挂历印刷|台历印刷|杂志印刷-乐成印刷 | 翰香原枣子坊加盟费多少钱-正宗枣核糕配方培训利润高飘香 | HEYL硬度计量泵-荧光法在线溶解氧仪-净时测控技术(上海)有限公司 | 在线钠离子分析仪-硅酸根离子浓度测定仪-油液水分测定仪价格-北京时代新维测控设备有限公司 | 北京普辉律师事务所官网_北京律师24小时免费咨询|法律咨询 | 橡胶膜片,夹布膜片,橡胶隔膜密封,泵阀设备密封膜片-衡水汉丰橡塑科技公司网站 | Copeland/谷轮压缩机,谷轮半封闭压缩机,谷轮涡旋压缩机,型号规格,技术参数,尺寸图片,价格经销商 CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 电主轴-高速精密电主轴-高速电机厂家-瑞德沃斯品牌有限公司 | 浴室柜-浴室镜厂家-YINAISI · 意大利设计师品牌 | 咿耐斯 |-浙江台州市丰源卫浴有限公司 | 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 棕刚玉_白刚玉_铝酸钙-锐石新材料 | 气胀轴|气涨轴|安全夹头|安全卡盘|伺服纠偏系统厂家-天机传动 | 宝元数控系统|对刀仪厂家|东莞机器人控制系统|东莞安川伺服-【鑫天驰智能科技】 | LZ-373测厚仪-华瑞VOC气体检测仪-个人有毒气体检测仪-厂家-深圳市深博瑞仪器仪表有限公司 | 东莞ERP软件_广州云ERP_中山ERP_台湾工厂erp系统-广东顺景软件科技有限公司 | 深圳成考网-深圳成人高考报名网| 武汉高低温试验箱_恒温恒湿试验箱厂家-武汉蓝锐环境科技有限公司 | 高扬程排污泵_隔膜泵_磁力泵_节能自吸离心水泵厂家-【上海博洋】 | 福州仿石漆加盟_福建仿石漆厂家-外墙仿石漆加盟推荐铁壁金钢(福建)新材料科技有限公司有保障 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 阳光模拟试验箱_高低温试验箱_高低温冲击试验箱_快速温变试验箱|东莞市赛思检测设备有限公司 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 南京PVC快速门厂家南京快速卷帘门_南京pvc快速门_世界500强企业国内供应商_南京美高门业 | 六维力传感器_三维力传感器_二维力传感器-南京神源生智能科技有限公司 | 电采暖锅炉_超低温空气源热泵_空气源热水器-鑫鲁禹电锅炉空气能热泵厂家 | EPK超声波测厚仪,德国EPK测厚仪维修-上海树信仪器仪表有限公司 | 浙江宝泉阀门有限公司 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 北京浩云律师事务所-企业法律顾问_破产清算等公司法律服务 | 切铝机-数控切割机-型材切割机-铝型材切割机-【昆山邓氏精密机械有限公司】 | 宏源科技-房地产售楼系统|线上开盘系统|售楼管理系统|线上开盘软件 | 电池挤压试验机-自行车喷淋-车辆碾压试验装置-深圳德迈盛测控设备有限公司 | 金属回收_废铜废铁回收_边角料回收_废不锈钢回收_废旧电缆线回收-广东益夫金属回收公司 | 玉米深加工设备-玉米深加工机械-新型玉米工机械生产厂家-河南粮院机械制造有限公司 | 土壤肥料养分速测仪_测土配方施肥仪_土壤养分检测仪-杭州鸣辉科技有限公司 | X光检测仪_食品金属异物检测机_X射线检测设备_微现检测 |