注册 登录 进入教材巡展
#

出版时间:2023-08

出版社:中国铁道出版社

以下为《Python Flask Web开发实战》的配套数字资源,这些资源在您购买图书后将免费附送给您:
试读
  • 中国铁道出版社
  • 9787113303075
  • 1-1
  • 502265
  • 66259750-9
  • 16开
  • 2023-08
  • 计算机类
  • 高职
内容简介
本书是“十四五”高等职业教育新形态一体化教材,基于 Flask 2.2,采用理论与案例结

合的方式全面介绍 Flask 程序的基本结构、路由、Jinja2 模板引擎、数据交互、数据库访问等

Web 开发所需的相关知识及技能。

本书在基础知识讲解方面,从初学者的角度,以简明的语言、实用的案例讲解 Flask 相关

知识和技能;在案例设计方面,注重实践和知识的运用;在考查知识掌握方面,配有思考与练

习;最后,以综合案例整合所学知识,以帮助学生理解相关知识、掌握相关技能,最终达到学

以致用。

本书适合作为高职软件技术专业、移动应用开发专业、大数据技术等专业的教材,也可作

为广大 IT 技术人员和 Python Web 爱好者的参考书。


目录
目 录

第 1 章 Flask 概述.1

1.1  初识 Flask. 1

1.1.1  Flask 简介  1

1.1.2  Flask 扩展  2

1.1.3  Python 常用的 Web 框架  2

1.2  虚拟环境搭建  3

1.2.1  虚拟环境配置  3

1.2.2  PyCharm 安装及使用 . 4

1.3  编写 Flask 程序 . 7

1.3.1  安装 Flask  7

1.3.2  编写 Flask 程序  10

1.3.3  配置开发服务器 . 11

小结  12

思考与练习  12

第 2 章 Flask 视图技术 16

2.1  HTTP 请求  16

2.1.1  HTTP 请求报文  17

2.1.2  request 对象 . 18

2.1.3  URL 传递参数  20

2.1.4  URL 反转 . 23

2.2  HTTP 响应  24

2.2.1  响应报文  24

2.2.2  response 对象 . 25

2.2.3  URL 重定向  26

2.3  Cookie 和 Session  28

2.3.1  Cookie. 28

2.3.2  Session  30

2.4  Blueprint . 33

2.5  Flask 拦截器 . 35

2.6  Flask 上下文 . 37

2.6.1  请求上下文  38

2.6.2  应用上下文  38

小结  39

思考与练习  40

第 3 章 Jinja2 模板引擎 42

3.1  Jinja2 模板引擎概述  42

3.2  模板中的控制语句 . 44

3.2.1  if 控制语句 . 44

3.2.2  for 控制语句 . 45

3.3  Jinja2 的过滤器 . 47

3.3.1  Jinja2 模板内置的过滤器 . 47

3.3.2  自定义过滤器  48

3.4  模板中的宏及使用 . 49

3.4.1  宏的定义  49

3.4.2  宏的使用  50

3.4.3  宏的导入  50

3.5  静态文件的加载 . 51

3.6  模板的继承与包含 . 51

3.6.1  模板的继承  51

3.6.2  模板的包含  53

小结  54

思考与练习  54

第 4 章 Flask 表单. 57

4.1  使用 Flask 处理通用表单 . 57

4.2  使用 Flask-WTF 处理表单  61

4.2.1  Flask-WTF 的安装 . 61

4.2.2  定义表单类  61

4.2.3  表单类在模板中的渲染 . 63

4.3  文件上传 . 65

4.3.1  不使用 Flask-WTF 方式上传文件  65

4.3.2  使用 Flask-WTF 方式上传文件  66

4.4  富文本编辑器  68

4.4.1  安装及配置  68

4.4.2  创建表单类  69

4.4.3  创建模板文件  69

4.4.4  创建视图函数  70

小结  72

思考与练习  72

第 5 章 数据库操作基础 . 74

5.1  数据库基础 . 74

5.1.1  关系型数据库  74

5.1.2  非关系型数据库 . 75

5.2  Python 数据库框架 PyMySQL  76

5.2.1  添加数据  78

5.2.2  查询数据  78

5.2.3  更新数据  80

5.2.4  删除数据  81

5.3  Flask-SQLAlchemy . 81

5.3.1  对象关系映射  81

5.3.2  Flask-SQLAlchemy 的使用 . 82

5.4  登录与注册案例 . 89

5.4.1  案例说明  89

5.4.2  文件夹组织结构 . 89

5.4.3  模板文件  95

小结  97

思考与练习  97

第 6 章 数据库操作进阶 100

6.1  数据库表中的关系 100

6.1.1  一对一关系  . 100

6.1.2  一对多关系  102

6.1.3  多对多关系  . 104

6.2  数据库表的分页查询  107

6.2.1  视图函数中定义分页数据 . 108

6.2.2  定义分页显示格式 . 108

6.2.3  在模板文件中调用宏 . 109

6.3  Flask-Migrate 实现数据库迁移 . 110

6.4  Flask-SQLAcodegen . 111

小结  112

思考与练习  112

第 7 章 前后端分离开发 114

7.1  前后端分离开发概述  114

7.2  RESTful  115

7.3  Flask-RESTful  116

7.3.1  使用 Flask-RESTful  116

7.3.2  输入参数验证  118

7.3.3  输出格式  121

7.4  案例——在线学习笔记 . 122

7.4.1  项目目录组织结构及安装配置  122

7.4.2  数据库设计  124

7.4.3  在线笔记后端设计 . 125

7.4.4  在线笔记前端设计 . 127

小结  131

思考与练习  132

第 8 章 万家果业商城 . 134

8.1  需求分析及系统功能  134

8.2  系统预览 . 135

8.2.1  前台预览  135

8.2.2  后台预览  136

8.3  数据库设计 . 138

8.4  项目目录组织结构及配置 . 143

8.4.1  项目目录结构  143

8.4.2  配置文件  . 143

8.4.3  项目入口文件  144

8.4.4  app 包初始化文件  . 145

8.4.5  前台包文件  145

8.5  会员注册 . 146

8.5.1  创建用户注册页面表单 . 146

8.5.2  显示注册页面  149

8.5.3  验证并保存注册信息 . 151

8.6  会员登录 . 152

8.6.1  创建用户登录页面表单 . 152

8.6.2  显示注册页面  154

8.6.3  生成并获取验证码 . 156

8.6.4  验证并保存会员登录状态 . 157

8.7  首页模块设计  159

8.7.1  首页导航  159

8.7.2  商品展示  161

8.7.3  底部模板  163

8.8  商品详情 . 164

8.8.1  商品详情模板文件 . 164

8.8.2  商品详情路由文件 . 167

8.9  购物车  167

8.9.1  添加商品到购物车 . 167

8.9.2  显示购物车  168

8.9.3  购物车模板  168

8.10  订单添加及显示 . 174

8.10.1  订单添加  174

8.10.2  订单显示  175

8.11  商品搜索 . 176

8.11.1  商品搜索路由  . 176

8.11.2  搜索商品显示  177

8.12  项目配置及运行 . 179

小结  181

思考与练习  181

第 9 章 部署上线 . 182

9.1  部署前准备工作 . 182

9.1.1  选择云服务器  182

9.1.2  安装宝塔面板  184

9.1.3  CentOS 下升级 Python  184

9.2  创建站点及数据库 . 185

9.2.1  创建站点  185

9.2.2  创建数据库  186

9.2.3  启动项目  187

9.3  Nginx+Gunicorn+Flask+Supervisor 的使用  188

9.3.1  使用 Gunicorn 运行程序  188

9.3.2  使用 Nginx 提供反向代理  190

9.3.3  使用 Supervisor 管理进程  191

9.4  uWSGI+Nginx 的使用 193

9.4.1  使用 uWSGI 运行程序 . 193

9.4.2  配置 Nginx  195

小结  196

思考与练习  196

VI