深入理解Flask

掌握用Python创建强大动态Web应用的技术

8.737 评价豆瓣读书
阅读
¥39.50
  • 导言
  • 目录
  • 作品信息

Flask是一种具有平缓学习曲线和庞大社区支持的微框架,利用它可以构建大规模的web应用。学习上手Flask非常轻松,但要深入理解却并不容易。

本书从一个简单的Flask应用开始,通过解决若干实战中的问题,对一系列进阶的话题进行了探讨。书中使用MVC(模型-视图-控制器)架构对示例应用进行了转化重构,以演示如何正确地组织应用代码结构。有了可扩展性强的应用结构之后,接下来的章节使用Flask扩展为应用提供了额外的功能,包括用户登录和注册、NoSQL查询、REST API、一套后台管理界面,以及其他特性。然后,你会学到如何使用单元测试,保障代码持续按照正确的方式工作,避免极具风险的猜测式编程。本书最后会讨论可用于部署Flask应用的诸多不同平台,以及你必须考虑的,每个平台的优劣利弊。

杰克·史都华(Jack Stouffer)是一位有数年web应用开发经验的程序员。他在两年前将他所有的项目都切换到了Flask。他目前在位于密歇根州奥本山的Apollo America工作,使用Python、Flask和编写企业内部业务工具。Jack是开源技术的信徒与支持者,在GitHub上发布以他所推荐的佳实践原则编写的Flask范例时,立即成为了线上受欢迎的Flask代码库。Jack还曾经担任Packt Publishing的《Flask Framework Cookbook》一书的审稿人。

译者苏丹,来自山城重庆,毕业于北京师范大学;现豆瓣资深开发工程师,主要开发作品有豆瓣FM等;有多年Python编程实践经验;曾参与《Learning Android中文版》一书翻译。

  1. 译者序
  2. 关于作者
  3. 关于技术审稿人
  4. 前言
  5. 第1章 入门
  6. 使用Git进行版本控制
  7. 安装Git
  8. 使用pip管理Python包
  9. 在Windows上安装pip
  10. 在Mac OS X和Linux上安装Python包管理器pip
  11. pip基本操作
  12. 用virtualenv的沙盒管理依赖
  13. virtualenv基础
  14. 开始我们的项目
  15. 使用Flask Script
  16. 总结
  17. 第2章 使用SQLAlchemy创建数据模型
  18. 设置SQLAlchemy
  19. Python安装包
  20. Flask SQLAlchemy
  21. 我们的第1个数据模型
  22. 创建user表
  23. CRUD
  24. 新增数据
  25. 读取数据
  26. 修改数据
  27. 删除数据
  28. 数据模型之间的关联
  29. 一对多
  30. 多对多
  31. SQLAlchemy会话对象的方便之处
  32. 使用Alembic进行数据库迁移
  33. 总结
  34. 第3章 通过模板创建视图
  35. Jinja的语法
  36. 过滤器
  37. 注释
  38. if语句
  39. 循环
  40. Flask特有的变量和函数
  41. 创建视图
  42. 视图函数
  43. 编写和继承模板
  44. Flask WTForms
  45. WTForms基础
  46. 自定义检验器
  47. 发布评论
  48. 总结
  49. 第4章 使用蓝图创建控制器
  50. 请求的构建和销毁,以及全局变量
  51. 错误页面
  52. 使用类描述视图
  53. 方法视图
  54. 蓝图
  55. 总结
  56. 第5章 进阶的应用结构
  57. 模块项目
  58. 重构代码
  59. 应用的工厂模式
  60. 总结
  61. 第6章 保护应用安全
  62. 准备工作
  63. 修改用户模型
  64. 创建表单
  65. 创建视图
  66. 社交网络登录
  67. 使用会话
  68. 使用Flask Login
  69. 用户角色
  70. 总结
  71. 第7章 在Flask中使用NoSQL数据库
  72. NoSQL数据库的种类
  73. 键值数据库
  74. 文档数据库
  75. 列式数据库
  76. 基于图的数据库
  77. 关系型数据库与NoSQL的比较
  78. 关系型数据库的优势
  79. NoSQL数据库的优势
  80. 在什么情况下用什么数据库
  81. 在Flask中使用MongoDB
  82. 安装MongoDB
  83. 配置MongoEngine
  84. 定义文档
  85. CRUD
  86. NoSQL中的关联关系
  87. 利用NoSQL的强大能力
  88. 总结
  89. 第8章 构建RESTful API
  90. REST是什么
  91. 构建RESTful Flask API
  92. GET请求
  93. 格式化输出
  94. 请求中的参数
  95. POST请求
  96. 身份认证
  97. PUT请求
  98. DELETE请求
  99. 总结
  100. 第9章 使用Celery编写异步任务
  101. Celery是什么
  102. 配置Celery和RabbitMQ
  103. 在Celery中创建任务
  104. 运行Celery任务
  105. Celery工作流
  106. 监控Celery
  107. 在Flower中通过网页进行监控
  108. 创建一个提醒应用
  109. 生成每周摘要
  110. 总结
  111. 第10章 有用的Flask扩展
  112. Flask Script
  113. Flask Debug Toolbar
  114. Flask Cache
  115. 缓存函数和视图
  116. 缓存带参数的函数
  117. 缓存带有查询参数的路径
  118. 使用Redis作为缓存后端
  119. 使用memcached作为缓存后端
  120. Flask Assets
  121. Flask Admin
  122. 编写基础管理页面
  123. 编写数据库管理页面
  124. 增强文章管理功能
  125. 编写文件系统管理页面
  126. 保护Flask Admin的安全
  127. Flask Mail
  128. 总结
  129. 第11章 构建你自己的扩展
  130. 编写一个YouTube Flask扩展
  131. 创建Python包
  132. 通过Flask扩展修改响应数据
  133. 总结
  134. 第12章 测试Flask应用
  135. 什么是单元测试
  136. 怎样进行测试
  137. 对应用进行单元测试
  138. 测试路由函数
  139. 用户界面测试
  140. 测试覆盖率
  141. 测试驱动的开发
  142. 总结
  143. 第13章 部署Flask应用
  144. 部署在你自己的服务器上
  145. 使用fabric把代码推送到服务器
  146. 使用supervisor运行你的Web服务器
  147. Gevent
  148. Tornado
  149. Nginx和uWSGI
  150. Apache和uWSGI
  151. 部署在Heroku上
  152. 使用Heroku Postgres
  153. 在Heroku中使用Celery
  154. 在AWS上部署应用
  155. 在Amazon Elastic Beanstalk上使用Flask
  156. 使用Amazon Relational Database Service
  157. 在Amazon Simple Queue Service中使用Celery
  158. 总结

作者〔美〕杰克·史都华(Jack Stouffer)

译者苏丹

类别 图书 / 非虚构

出版社电子工业出版社

出版日期

ISBN9787121292316

提供方电子工业出版社

标签互联网(1153)技术(304)网络(475)计算机(1434)美国(2048)编程(395)

喜欢这本书的人也喜欢

来自豆瓣读书的评论3