您的瀏覽器不支持JavaScript,請開啟后繼續
PythonWeb開發手冊:基礎·實戰·強化

PythonWeb開發手冊:基礎·實戰·強化

  • 作者
  • 明日科技編著

《Python Web開發手冊:基礎·實戰·強化》是“計算機科學與技術手冊系列”圖書之一,該系列圖書內容全面,以理論聯系實際、能學到并做到為宗旨,以技術為核心,以案例為輔助,引領讀者全面學習基礎技術、代碼編寫方法和具體應用項目。旨在為想要進入相應領域或者已經在該領域深耕多年的技術人員提供新而全的技術性內容及案例。 本書以Python語言為載體講解Web開發,分為4篇...


  • ¥128.00

ISBN: 978-7-122-40123-6

版次: 1

出版時間: 2022-02-01

圖書介紹

ISBN:978-7-122-40123-6

語種:漢文

開本:16

出版時間:2022-02-01

裝幀:平

頁數:391

編輯推薦

1.本書內容極其豐富、文字通俗易懂,適合入門并得到迅速提高。 2.本書詳細講解關鍵框架flask和Django。 3.本書案例豐富、項目典型,步驟詳細,手把手教學,查閱方便。 4.本書配備相關代碼資源,可直接調試。 5.本書配備工程師寶典APP電子書(紙電同步),講課視頻,資源庫、社區技術支持、QQ在線等服務。

作者簡介

明日科技是一家以軟件開發和教育為主的高科技公司,為國家高新技術企業和雙軟認證企業。開發的系統有鐵路多媒體查詢系統、長春電子地圖、天氣預報系統、礦山瓦斯報警系統等軟件產品。開發的圖書有《程序開發范例寶典》、《軟件開發視頻大講堂》、《軟件開發1200例》、《零基礎學系列》、《項目開發實戰入門》等多個系列圖書,多個品種榮獲“全行業**暢銷書”獎項,《軟件開發視頻大講堂》、《零基礎學系列》系列是目前市場上暢銷的專業基礎編程類叢書。

精彩書摘

《Python Web開發手冊:基礎·實戰·強化》是“計算機科學與技術手冊系列”圖書之一,該系列圖書內容全面,以理論聯系實際、能學到并做到為宗旨,以技術為核心,以案例為輔助,引領讀者全面學習基礎技術、代碼編寫方法和具體應用項目。旨在為想要進入相應領域或者已經在該領域深耕多年的技術人員提供新而全的技術性內容及案例。 本書以Python語言為載體講解Web開發,分為4篇,分別是:Web基礎篇、Flask框架實戰篇、Django框架實戰篇和項目強化篇,共30章,內容由淺入深,循序漸進,使讀者在打好基礎的同時逐步提升。本書內容包含了Web開發必備的基礎知識和數據庫相關知識,以較大篇幅講解了目前應用較廣的兩個框架(Flask和Django)和相應的14個關鍵案例,同時配備了兩個大型項目,使讀者能夠同步做出產品,達到學到并且做到的目的。 本書適合Python Web開發從業者、Python開發程序員、Python開發以及人工智能的愛好者閱讀,也可供高校計算機相關專業師生參考。

目錄

第1篇 Web基礎篇
第1章 Web基礎
1.1 Web概述 3
1.1.1 Web的發展歷程 3
1.1.2 Web程序工作原理 4
1.2 Web框架簡介 5
1.2.1 ORM簡介 5
1.2.2 模板引擎 5
1.3 常用的Python Web框架 6
1.3.1 Flask 6
1.3.2 Django 6
1.3.3 Tornado 6
1.4 搭建Web開發環境 6
1.4.1 創建虛擬環境 6
1.4.2 pip包管理工具 7
1.4.3 切換鏡像源 9

第2章 前端基礎
2.1 HTML基礎 12
2.1.1 HTML簡介 12
【實例2.1】第一個HTML頁面 12
2.1.2 標簽和元素 13
2.1.3 表單 15
2.2 CSS基礎 18
2.2.1 基礎知識 18
2.2.2 嵌入CSS樣式 19
【實例2.2】添加CSS樣式 19
【實例2.3】使用外部樣式表 21
2.3 JavaScript基礎 21
2.3.1 基本語法 21
2.3.2 使用JavaScript 23
【實例2.4】彈出對話框 23
【實例2.5】使用外部JavaScript文件方式修改實例2.4 24
2.4 jQuery基礎 24
2.4.1 使用jQuery 25
2.4.2 基本語法 25
2.4.3 選擇器 26
【實例2.6】隱藏

標簽 26 2.4.4 觸發事件 28 2.4.5 內容和屬性 29 【實例2.7】檢測用戶填寫的用戶名和密碼是否符合要求 29 2.5 Bootstrap框架 31 2.5.1 安裝Bootstrap 31 2.5.2 基本使用 32 【實例2.8】創建一個全屏幕宣傳頁面 32 2.6 綜合案例——導航欄菜單 33 2.7 實戰練習 34 第3章 MySQL的使用 3.1 MySQL的安裝及配置 36 3.1.1 MySQL簡介 36 3.1.2 安裝MySQL 36 3.1.3 配置MySQL 37 3.2 庫的相關操作 38 3.2.1 創建數據庫 38 3.2.2 查看數據庫 39 3.2.3 刪除數據庫 39 3.3 表的相關操作 40 3.3.1 創建數據表 40 3.3.2 查看數據表 41 3.3.3 修改表結構 42 3.3.4 刪除數據表 42 3.4 數據類型 43 3.4.1 數字類型 43 3.4.2 字符串類型 44 3.4.3 日期和時間類型 45 3.5 數據的增查改刪 45 3.5.1 增加數據 45 3.5.2 查詢數據 46 3.5.3 修改數據 49 3.5.4 刪除數據 49 3.6 PyMySQL操作數據庫 50 3.6.1 安裝PyMySQL 50 3.6.2 連接數據庫 50 3.6.3 游標對象 51 【實例3.1】向mrsoft數據庫中添加books圖書表 52 3.6.4 操作數據庫 53 【實例3.2】向books圖書表中添加圖書數據 53 3.7 ORM模型 54 3.7.1 ORM簡介 54 3.7.2 常用的ORM庫 55 3.8 綜合案例——從數據庫查詢并篩選數據 55 3.8.1 設計SQL 55 3.8.2 實現過程 55 3.9 實戰練習 56 第2篇 Flask框架實戰篇 第4章 Flask快速應用 4.1 Flask基礎 59 4.1.1 Flask簡介 59 4.1.2 安裝Flask 59 4.2 使用Flask輸出Hello World!/?60 4.2.1 第一個Flask程序 60 【實例4.1】輸出Hello World! 60 4.2.2 開啟debug 60 4.3 路由 61 4.3.1 變量規則 61 【實例4.2】根據不同的用戶名參數,輸出相應的用戶信息 61 4.3.2 構造URL 62 4.3.3 HTTP 方法 62 4.3.4 靜態文件 63 4.4 綜合案例——模擬登錄 63 4.5 實戰練習 64 第5章 Flask的請求與響應 5.1 請求參數 66 5.1.1 GET請求 66 【實例5.1】獲取GET請求參數 66 5.1.2 POST請求 67 【實例5.2】獲取表單提交信息 67 5.2 文件上傳 68 【實例5.3】實現上傳用戶圖片功能 68 5.3 鉤子函數的應用 70 【實例5.4】使用請求鉤子,在執行視圖函數前后執行相應的函數 71 5.4 接收響應 72 5.5 響應的格式 72 5.5.1 MIME類型 72 5.5.2 JSON數據 73 5.6 Flask會話 73 5.6.1 Cookie對象 74 【實例5.5】使用Cookie判斷用戶是否登錄 74 5.6.2 Session對象 76 5.7 綜合案例——用戶登錄 77 5.8 實戰練習 77 第6章 Jinja2模板引擎 6.1 Flask使用Jinja2模板引擎 80 6.1.1 Jinja2簡介 80 6.1.2 渲染模板 80 【實例6.1】渲染首頁模板 80 6.2 模板中傳遞參數 82 6.3 模板的控制語句 83 6.3.1 if語句 83 6.3.2 for語句 83 6.3.3 模板上下文 83 【實例6.2】使用Session判斷用戶是否登錄 84 6.4 Jinja2的過濾器 85 6.4.1 常用的過濾器 85 6.4.2 自定義過濾器 85 【實例6.3】Flask應用對象的add_template_filter方法定義過濾器 85 【實例6.4】使用app.template_filter()裝飾器定義過濾器 86 6.5 宏的應用 87 6.5.1 宏的定義 87 6.5.2 宏的導入 87 6.5.3 include的使用 87 6.6 模板的繼承 87 【實例6.5】使用子模板繼承父模板 88 6.7 提示信息 90 【實例6.6】使用flash閃現用戶登錄成功或失敗的消息 90 6.8 綜合案例——自定義錯誤頁面 91 6.8.1 需求分析 92 6.8.2 實現過程 92 6.9 實戰練習 93 第7章 Flask視圖與藍圖 7.1 綁定視圖函數 95 7.1.1 使用app.route 95 7.1.2 使用add_url_rule 95 7.2 類視圖 96 7.2.1 標準類視圖 96 7.2.2 基于調度方法的類視圖 98 7.3 裝飾器 99 7.3.1 裝飾器的定義 99 7.3.2 基本應用 99 7.3.3 帶參函數使用裝飾器 101 7.4 藍圖 102 7.4.1 簡介 103 7.4.2 使用藍圖 103 【實例7.1】使用藍圖創建前臺和后臺應用 103 7.5 表單 104 7.5.1 CSRF 104 7.5.2 表單類 105 7.6 綜合案例——驗證用戶登錄 106 7.7 實戰練習 108 第8章 Flask操作數據庫 8.1 常用擴展 110 8.1.1 Flask-SQLAlchemy擴展 110 8.1.2 Flask-Migrate擴展 112 8.1.3 Flask-Script擴展 114 8.2 管理數據庫 117 8.2.1 連接數據庫 117 8.2.2 定義數據模型 118 8.2.3 定義關系 119 8.3 增查改刪 121 8.3.1 創建數據 121 8.3.2 讀取數據 121 8.3.3 更新數據 123 8.3.4 刪除數據 123 8.4 綜合案例——創建數據表 123 8.4.1 案例說明 123 8.4.2 實現案例 123 8.5 實戰練習 125 第9章 【案例】Flask_SQLAlchemy篩選網易云免費課程 9.1 案例效果預覽 126 9.2 案例準備 127 9.3 業務流程 127 9.4 實現過程 127 9.4.1 創建數據表 128 9.4.2 設置過濾器 129 9.5 關鍵技術 132 第10章 【案例】Splitlines解析數據庫文本中的換行內容 10.1 案例效果預覽 134 10.2 案例準備 134 10.3 業務流程 135 10.4 實現過程 135 10.4.1 項目結構 135 10.4.2 安裝模塊 135 10.4.3 連接數據庫 135 10.4.4 業務邏輯 136 10.4.5 創建父模板 136 10.4.6 創建詳情文件 137 10.5 關鍵技術 138 第11章 【案例】Flask_Login用戶登錄校驗 11.1 案例效果預覽 139 11.2 案例準備 140 11.3 業務流程 140 11.4 實現過程 140 11.4.1 登錄與權限校驗 140 11.4.2 更改密碼 145 11.4.3 登錄成功后的處理 148 11.5 關鍵技術 150 第12章 【案例】ECharts顯示折線圖 12.1 案例效果預覽 153 12.2 案例準備 153 12.3 業務流程 154 12.4 實現過程 154 12.4.1 安裝依賴 154 12.4.2 連接數據庫 154 12.4.3 業務邏輯 155 12.4.4 渲染頁面 155 12.5 關鍵技術 160 第13章 【案例】員工信息審核 13.1 案例效果預覽 161 13.2 案例準備 162 13.3 業務流程 162 13.4 實現過程 162 13.5 關鍵技術 166 第14章 【案例】網頁底部Tab欄設計 14.1 案例效果預覽 167 14.2 案例準備 167 14.3 業務流程 168 14.4 實現過程 168 14.4.1 設置路由 168 14.4.2 創建父模板 168 14.4.3 繼承父模板 169 14.5 關鍵技術 170 第15章 【案例】多條件查詢的使用 15.1 案例效果預覽 171 15.2 案例準備 172 15.3 業務流程 172 15.4 實現過程 172 15.4.1 概述 172 15.4.2 篩選酒店信息 173 15.4.3 學生選課系統 175 15.5 關鍵技術 176 第3篇 Django框架實戰篇 第16章 Django快速應用 16.1 使用Django框架 179 16.1.1 新版本特性 179 16.1.2 安裝Django 179 16.2 第一個Django項目 179 【實例16.1】使用命令行創建項目 179 16.3 創建Django應用 180 16.4 URL組成部分 182 16.5 路由 182 16.5.1 路由形式 182 【實例16.2】定義路由并創建路由函數 183 16.5.2 include的使用 184 16.6 管理后臺 185 16.7 綜合案例——Hello Django 187 16.8 實戰練習 189 第17章 Django模板引擎 17.1 DTL介紹 191 17.1.1 DTL簡介 191 17.1.2 渲染模板 191 【實例17.1】創建并渲染模板 191 17.1.3 模板路徑 193 17.2 模板變量 193 17.3 常用標簽 194 17.4 過濾器 197 17.4.1 常用過濾器 197 17.4.2 自定義過濾器 199 17.5 簡化模板 200 17.5.1 引入模板 200 17.5.2 繼承模板 201 17.6 加載靜態文件 202 17.7 綜合案例——時間過濾器 202 17.8 實戰練習 204 第18章 Django視圖與表單 18.1 視圖簡介 206 18.1.1 視圖函數 206 【實例18.1】創建獲取當前日期的視圖函數 206 18.1.2 視圖類 206 18.2 請求裝飾器 210 18.3 請求與響應 210 18.3.1 請求對象 211 18.3.2 響應對象 211 18.4 重定向 212 18.5 自定義錯誤頁面 213 18.6 使用表單 214 18.6.1 表單的基本使用 214 18.6.2 驗證數據 215 18.7 ModelForm 217 18.7.1 使用方法 217 18.7.2 字段類型 219 18.7.3 表單驗證 220 18.7.4 save()方法 221 18.7.5 字段選擇 222 18.8 文件上傳 222 18.9 綜合案例——用戶注冊 224 18.10 實戰練習 226 第19章 Django模型與數據庫 19.1 數據庫操作 228 19.2 ORM模型 228 19.2.1 添加數據模型 229 19.2.2 數據遷移 230 19.2.3 數據API 231 19.3 多關聯模型 233 19.3.1 一對一 233 19.3.2 多對一 235 19.3.3 多對多 238 19.4 定制管理后臺 241 19.4.1 ModelAdmin.fields 241 19.4.2 ModelAdmin.fieldset 242 19.4.3 ModelAdmin.list_display 244 19.4.4 ModelAdmin.list_display_links 246 19.4.5 ModelAdmin.list_editable 246 19.4.6 ModelAdmin.list_filter 247 19.5 綜合案例——使用模型操作數據庫 250 19.6 實戰練習 252 第20章 Django緩存 20.1 Session會話 254 20.1.1 啟用會話 254 20.1.2 配置會話引擎 254 20.1.3 常用方法 255 20.1.4 自動登錄 256 【實例20.1】使用會話實現登錄功能 256 20.1.5 退出登錄 259 20.2 Memcached緩存系統 259 20.3 Redis數據庫 261 20.4 用戶權限 263 20.4.1 用戶對象 264 20.4.2 權限和分組 266 20.5 綜合案例——登錄驗證 268 20.6 實戰練習 268 第21章 【案例】Celery異步發送驗證郵件 21.1 案例效果預覽 269 21.2 案例準備 269 21.3 業務流程 270 21.4 實現過程 270 21.4.1 數據遷移 270 21.4.2 郵箱配置 271 21.4.3 設置路由 272 21.4.4 前端頁面 272 21.4.5 業務邏輯 273 21.4.6 異步任務 274 21.4.7 啟動項目 275 21.5 關鍵技術 275 第22章 【案例】自定義Admin命令 22.1 案例效果預覽 276 22.2 案例準備 276 22.3 業務流程 277 22.4 實現過程 277 22.4.1 定義命令 277 22.4.2 項目日志 278 22.5 關鍵技術 281 第23章 【案例】Channels實現Web Socket聊天室 23.1 案例效果預覽 282 23.2 案例準備 283 23.3 業務流程 283 23.4 實現過程 283 23.4.1 安裝Channels 283 23.4.2 創建APP 284 23.4.3 配置模板 284 23.4.4 添加路由 285 23.4.5 配置Channels路由 285 23.4.6 完成WebSocket 287 23.4.7 升級為異步執行 287 23.5 關鍵技術 290 第24章 【案例】Paginator實現數據分頁 24.1 案例效果預覽 291 24.2 案例準備 291 24.3 業務流程 292 24.4 實現過程 292 24.4.1 添加路由 292 24.4.2 分頁邏輯 292 24.4.3 渲染模板 293 24.4.4 運行程序 294 24.5 關鍵技術 294 第25章 【案例】Ajax多級下拉框聯動 25.1 案例效果預覽 296 25.2 案例準備 296 25.3 業務流程 296 25.4 實現過程 297 25.4.1 匹配路由 297 25.4.2 添加模板 297 25.4.3 業務邏輯 298 25.4.4 關閉CSRF防護 298 25.5 關鍵技術 299 第26章 【案例】Haystack站內全局搜索引擎 26.1 案例效果預覽 301 26.2 案例準備 301 26.3 業務流程 302 26.4 實現過程 302 26.4.1 準備環境 302 26.4.2 注冊模塊 302 26.4.3 配置搜索引擎 303 26.4.4 業務邏輯 304 26.4.5 渲染模板 304 26.5 關鍵技術 306 第27章 【案例】Message消息提示 27.1 案例效果預覽 307 27.2 案例準備 307 27.3 業務流程 307 27.4 實現過程 308 27.4.1 配置文件 308 27.4.2 消息引擎 309 27.4.3 添加路由 309 27.4.4 業務邏輯 309 27.4.5 渲染模板 310 27.5 關鍵技術 311 第4篇 項目強化篇 第28章 基于Flask框架的51商城 28.1 系統需求分析 314 28.2 系統功能設計 314 28.2.1 系統功能結構 314 28.2.2 系統業務流程 314 28.2.3 系統預覽 315 28.3 系統開發必備 319 28.3.1 系統開發環境 319 28.3.2 文件夾組織結構 319 28.4 數據庫設計 320 28.4.1 數據庫概要說明 320 28.4.2 數據表模型 320 28.4.3 數據表關系 322 28.5 會員注冊模塊設計 323 28.5.1 會員注冊模塊概述 323 28.5.2 會員注冊頁面 323 28.5.3 驗證并保存注冊信息 327 28.6 會員登錄模塊設計 328 28.6.1 會員登錄模塊概述 328 28.6.2 創建會員登錄頁面 328 28.6.3 保存會員登錄狀態 331 28.6.4 會員退出功能 331 28.7 首頁模塊設計 332 28.7.1 首頁模塊概述 332 28.7.2 顯示最新上架商品 333 28.7.3 顯示打折商品 334 28.7.4 顯示熱門商品 335 28.8 購物車模塊 336 28.8.1 購物車模塊概述 336 28.8.2 顯示商品詳細信息 336 28.8.3 添加購物車 338 28.8.4 查看購物車 339 28.8.5 保存訂單 340 28.8.6 查看訂單 341 28.9 后臺功能模塊設計 341 28.9.1 后臺登錄模塊設計 341 28.9.2 商品管理模塊設計 342 28.9.3 銷量排行榜模塊設計 343 28.9.4 會員管理模塊設計 343 28.9.5 訂單管理模塊設計 344 第29章 基于Django框架的綜藝之家管理系統 29.1 系統需求分析 346 29.1.1 系統概述 346 29.1.2 系統可行性分析 346 29.1.3 系統用戶角色分配 346 29.1.4 功能性需求分析 347 29.1.5 非功能性需求分析 347 29.2 系統功能設計 347 29.2.1 系統功能結構 347 29.2.2 系統業務流程 347 29.2.3 系統預覽 348 29.3 系統開發必備 349 29.3.1 系統開發環境 349 29.3.2 文件夾組織結構 350 29.4 數據庫設計 350 29.4.1 數據庫概要說明 350 29.4.2 數據表模型 350 29.4.3 數據表關系 352 29.5 綜藝管理模塊設計 352 29.5.1 實現后臺錄入綜藝信息和綜藝視頻的功能 353 29.5.2 前臺首頁功能 354 29.5.3 綜藝詳情頁功能 356 29.6 搜索功能模塊設計 359 29.7 分類功能模塊設計 361 29.8 社交管理模塊設計 364 29.8.1 安裝django-spirit模塊 364 29.8.2 發帖和回帖功能 365 29.8.3 論壇管理后臺功能 366 29.9 可視化展示模塊設計 367 29.9.1 ECharts開源可視化圖表庫基本使用 367 29.9.2 AJAX異步加載圖表數據 369 第30章 Web項目部署 30.1 常見的部署方式 374 30.1.1 WSGI 374 30.1.2 Gunicorn 374 30.1.3 Nginx 374 30.1.4 supervisor 375 30.2 云服務器配置 375 30.2.1 常用的云服務器 375 30.2.2 pip包管理工具 377 30.2.3 虛擬環境 378 30.3 使用Gunicorn 379 30.3.1 使用參數啟動Gunicorn 379 30.3.2 加載配置文件啟動Gunicorn 381 30.4 使用Nginx 381 30.4.1 安裝Nginx 381 30.4.2 Nginx的啟停 382 30.4.3 配置文件 382 30.4.4 靜態文件 383 30.4.5 代理服務器 383 30.5 使用supervisor 384 30.5.1 配置文件 385 30.5.2 常用命令 386 30.5.3 啟動程序 386 附錄 附錄1 Flask框架常用類和函數 388 附錄2 Flask框架請求對象提供的常用屬性或方法 388 附錄3 Flask框架響應對象提供的屬性或方法 389 附錄4 Flask框架常用擴展 389 附錄5 Django框架常用命令 389 附錄6 Django框架setting.py常用配置 390 附錄7 Django框架ORM常用API 390

發送電子郵件聯系我們

乱子伦xxxx无码㊣亚洲国产日本韩国欧美mv㊣三上悠亚日韩精品二区㊣欧美精品亚洲精品日韩传电影