Flask Web开发:基于Python的Web应用开发实战
查字典图书网
当前位置: 查字典 > 图书网 > 编程> Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

8.7

作者: [美] Miguel Grinberg
出版社: 人民邮电出版社
译者: 安道
出版年: 2014-12
页数: 224
定价: 59.00元
装帧: 平装
ISBN: 9787115373991

我要收藏

内容简介:

本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。

• 学习Flask应用的基本结构,编写示例应用;

• 使用必备的组件,包括模板、数据库、Web表单和电子邮件支持;

• 使用包和模块构建可伸缩的大型应用;

• 实现用户认证、角色和个人资料;

• 在博客网站中重用模板、分页显示列表以及使用富文本;

• 使用基于Flask的REST式API,在智能手机、平板电脑和其他第三方客户端上实现可用功能;

• 学习运行单元测试以及提升性能;

• 将Web应用部署到生产服务器。

作者简介:

Miguel Grinberg

拥有25年开发经验的高级软件工程师,目前为广播公司开发视频软件。他常在个人博客(blog.miguelgrinberg.com)上撰写各类博文,内容主要涉及Web开发、机器人技术、摄影,偶尔也会有一些影评。他和妻子、四个孩子、两只狗和一只猫共同生活在俄勒冈州波特兰市。Twitter:@miguelgrinberg。

目录:

前言XI

第一部分 Flask简介

第1章 安装3

1.1 使用虚拟环境4

1.2 使用pip安装Python包6

第2章 程序的基本结构7

2.1 初始化7

2.2 路由和视图函数7

2.3 启动服务器9

2.4 一个完整的程序9

2.5 请求-响应循环11

2.5.1 程序和请求上下文11

2.5.2 请求调度13

2.5.3 请求钩子13

2.5.4 响应14

2.6 Flask扩展15

第3章 模板19

3.1 Jinja2模板引擎19

3.1.1 渲染模板20

3.1.2 变量21

3.1.3 控制结构22

3.2 使用Flask-Bootstrap集成Twitter Bootstrap23

3.3 自定义错误页面26

3.4 链接29

3.5 静态文件29

3.6 使用Flask-Moment本地化日期和时间30

第4章 Web表单33

4.1 跨站请求伪造保护33

4.2 表单类34

4.3 把表单渲染成HTML35

4.4 在视图函数中处理表单37

4.5 重定向和用户会话39

4.6 Flash消息41

第5章 数据库43

5.1 SQL数据库43

5.2 NoSQL数据库44

5.3 使用SQL还是NoSQL45

5.4 Python数据库框架45

5.5 使用Flask-SQLAlchemy管理数据库46

5.6 定义模型47

5.7 关系49

5.8 数据库操作50

5.8.1 创建表50

5.8.2 插入行51

5.8.3 修改行52

5.8.4 删除行52

5.8.5 查询行52

5.9 在视图函数中操作数据库54

5.10 集成Python shell56

5.11 使用Flask-Migrate实现数据库迁移56

5.11.1 创建迁移仓库57

5.11.2 创建迁移脚本57

5.11.3 更新数据库58

第6章 电子邮件59

使用Flask-Mail提供电子邮件支持59

在Python shell中发送电子邮件60

在程序中集成发送电子邮件功能61

异步发送电子邮件62

第7章 大型程序的结构65

7.1 项目结构65

7.2 配置选项66

7.3 程序包67

7.3.1 使用程序工厂函数68

7.3.2 在蓝本中实现程序功能69

7.4 启动脚本71

7.5 需求文件71

7.6 单元测试72

7.7 创建数据库74

第二部分 实例:社交博客程序

第8章 用户认证77

8.1 Flask的认证扩展77

8.2 密码安全性77

8.3 创建认证蓝本80

8.4 使用Flask-Login认证用户81

8.4.1 准备用于登录的用户模型81

8.4.2 保护路由83

8.4.3 添加登录表单83

8.4.4 登入用户84

8.4.5 登出用户86

8.4.6 测试登录86

8.5 注册新用户87

8.5.1 添加用户注册表单87

8.5.2 注册新用户89

8.6 确认账户90

8.6.1 使用itsdangerous生成确认令牌90

8.6.2 发送确认邮件92

8.7 管理账户95

第9章 用户角色97

9.1 角色在数据库中的表示97

9.2 赋予角色99

9.3 角色验证100

第10章 用户资料103

10.1 资料信息103

10.2 用户资料页面104

10.3 资料编辑器106

10.3.1 用户级别的资料编辑器 106

10.3.2 管理员级别的资料编辑器108

10.4 用户头像110

第11章 博客文章115

11.1 提交和显示博客文章115

11.2 在资料页中显示博客文章118

11.3 分页显示长博客文章列表118

11.3.1 创建虚拟博客文章数据119

11.3.2 在页面中渲染数据120

11.3.3 添加分页导航121

11.4 使用Markdown和Flask-PageDown支持富文本文章124

11.4.1 使用Flask-PageDown124

11.4.2 在服务器上处理富文本125

11.5 博客文章的固定链接127

11.6 博客文章编辑器128

第12章 关注者131

12.1 再论数据库关系131

12.1.1 多对多关系131

12.1.2 自引用关系133

12.1.3 高级多对多关系134

12.2 在资料页中显示关注者136

12.3 使用数据库联结查询所关注用户的文章138

12.4 在首页显示所关注用户的文章141

第13章 用户评论145

13.1 评论在数据库中的表示145

13.2 提交和显示评论146

13.3 管理评论149

第14章 应用编程接口153

14.1 REST简介153

14.1.1 资源就是一切154

14.1.2 请求方法154

14.1.3 请求和响应主体155

14.1.4 版本156

14.2 使用Flask提供REST Web服务156

14.2.1 创建API蓝本157

14.2.2 错误处理157

14.2.3 使用Flask-HTTPAuth认证用户159

14.2.4 基于令牌的认证161

14.2.5 资源和JSON的序列化转换162

14.2.6 实现资源端点165

14.2.7 分页大型资源集合167

14.2.8 使用HTTPie测试Web服务168

第三部分 成功在望

第15章 测试173

15.1 获取代码覆盖报告173

15.2 Flask测试客户端176

15.2.1 测试Web程序176

15.2.2 测试Web服务179

15.3 使用Selenium进行端到端测试180

15.4 值得测试吗184

第16章 性能185

16.1 记录影响性能的缓慢数据库查询185

16.2 分析源码187

第17章 部署189

17.1 部署流程189

17.2 把生产环境中的错误写入日志190

17.3 云部署191

17.4 Heroku平台191

17.4.1 准备程序192

17.4.2 使用Foreman进行测试196

17.4.3 使用Flask-SSLify启用安全HTTP197

17.4.4 执行git push命令部署198

17.4.5 查看日志199

17.4.6 部署一次升级199

17.5 传统的托管200

17.5.1 架设服务器200

17.5.2 导入环境变量200

17.5.3 配置日志201

第18章 其他资源203

18.1 使用集成开发环境203

18.2 查找Flask扩展204

18.3 参与Flask开发204

关于封面图205

文章试读:大多数Python 包都使用pip 实用工具安装,使用virtualenv 创建虚拟环境时会自动安装pip。激活虚拟环境后,pip 所在的路径会被添加进PATH。 如果你在Python 3.3 中使用pyvenv 创建虚拟环境,那就需要手动安装pip。 安装方法参见pip 的网站(https://pip.pypa.io/en/latest/installing.html)。在Python 3....

(查看全部试读)

展开全文
随机来一本书

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

热门标签:
我想说两句
我要写长评
 想读     在读     读过   
评价:
标签(多个标签以“,”分开):