FlaskWeb开发基于Python的Web应用开发实战第2版_第1页
FlaskWeb开发基于Python的Web应用开发实战第2版_第2页
FlaskWeb开发基于Python的Web应用开发实战第2版_第3页
FlaskWeb开发基于Python的Web应用开发实战第2版_第4页
FlaskWeb开发基于Python的Web应用开发实战第2版_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、FlaskWeb开发基于Python的Web应用开发实战第2版FlaskWeb开发基于Python的Web应用开发实战第2目录01.OReilly Media, Inc. 介绍07.第二部分 实例:社交博客应用03.本书结构05.第2版增加的感谢02.面向的读者群04.如何使用示例代码06.第一部分 Flask 简介08.第三部分 成功在望目录01.OReilly Media, Inc. 介绍0701OReilly Media, Inc. 介绍01OReilly Media, Inc. 介绍OReilly Media, Inc. 介绍OReilly Media, Inc. 介绍02面向的读者群

2、02面向的读者群面向的读者群面向的读者群03本书结构03本书结构本书结构本书结构04如何使用示例代码04如何使用示例代码如何使用示例代码使用代码示例1OReilly Safari2如何使用示例代码使用代码示例1OReilly Safari05第2版增加的感谢05第2版增加的感谢第2版增加的感谢第2版增加的感谢06第一部分 Flask 简介06第一部分 Flask 简介1 安装第一部分 Flask 简介0102030405061.1 创建应用目录1.2 虚拟环境1.3 在Python 3中创建虚拟环境1.4 在Python 2中创建虚拟环境1.5 使用虚拟环境1.6 使用pip安装Python包

3、1 安装第一部分 Flask 简介01020304050612 应用的基本结构2.1 初始化A2.2 路由和视图函数B2.3 一个完整的应用C2.4 Web开发服务器D2.5 动态路由E2.6 调试模式F2 应用的基本结构2.1 初始化A2.2 路由和视图函数B22 应用的基本结构2.8 请求响应循环022.9 Flask扩展032.7 命令行选项012 应用的基本结构2.8 请求响应循环022.9 Flas2 应用的基本结构2.8 请求响应循环2.8.1 应用和请求上下文2.8.2 请求分派2.8.3 请求对象2.8.4 请求钩子2.8.5 响应2 应用的基本结构2.8 请求响应循环2.8.

4、1 应用和请3 模板3.1.1 渲染模板3.1.2 变量3.1.3 控制结构3.1 Jinja2模板引擎01 3.2 使用Flask-Bootstrap集成Bootstrap02 3.3 自定义错误页面03 3.4 链接04 3.5 静态文件05 3.6 使用Flask-Moment本地化日期和时间063 模板3.1.1 渲染模板3.1 Jinja2模板引擎014 Web 表单第一部分 Flask 简介4.1 配置4.2 表单类4.3 把表单渲染成HTML4.6 闪现消息4.5 重定向和用户会话4.4 在视图函数中处理表单4 Web 表单第一部分 Flask 简介4.1 配置4.25 数据库5

5、.2 NoSQL数据库5.4 Python数据库框架5.6 定义模型5.1 SQL数据库5.3 使用SQL还是NoSQL5.5 使用Flask-SQLAlchemy管理数据库5 数据库5.2 NoSQL数据库5.4 Python数据库5 数据库5.8 数据库操作5.10 集成Python shell5.7 关系5.9 在视图函数中操作数据库5.11 使用Flask-Migrate实现数据库迁移5 数据库5.8 数据库操作5.10 集成Python sh5 数据库5.8 数据库操作5.8.1 创建表5.8.2 插入行5.8.3 修改行5.8.4 删除行5.8.5 查询行5 数据库5.8 数据库操

6、作5.8.1 创建表5 数据库5.11 使用Flask-Migrate实现数据库迁移5.11.1 创建迁移仓库5.11.2 创建迁移脚本5.11.3 更新数据库5.11.4 添加几个迁移5 数据库5.11 使用Flask-Migrate实现数据库LOGOM.94275.CN第一部分 Flask 简介6 电子邮件使用Flask-Mail提供电子邮件支持01在Python shell中发送电子邮件02在应用中集成电子邮件发送功能03异步发送电子邮件04LOGOM.94275.CN第一部分 Flask 简介6 电7 大型应用的结构7.1 项目结构017.4 应用脚本047.2 配置选项027.5 需

7、求文件057.3 应用包037.6 单元测试067 大型应用的结构7.1 项目结构017.4 应用脚本0477 大型应用的结构7.7 创建数据库17.8 运行应用27 大型应用的结构7.7 创建数据库17.8 运行应用27 大型应用的结构7.3 应用包7.3.1 使用应用工厂函数7.3.2 在蓝本中实现应用功能7 大型应用的结构7.3 应用包7.3.1 使用应用工厂函数07第二部分 实例:社交博客应用07第二部分 实例:社交博客应用8 用户身份验证8.2 密码安全性8.3 创建身份验证蓝本8.5 注册新用户8.1 Flask的身份验证扩展使用Werkzeug计算密码散列值8.4 使用Flask

8、-Login验证用户身份8 用户身份验证8.2 密码安全性8.3 创建身份验证蓝本88 用户身份验证8.6 确认账户18.7 管理账户28 用户身份验证8.6 确认账户18.7 管理账户28 用户身份验证8.4 使用Flask-Login验证用户身份8.4.1 准备用于登录的用户模型8.4.2 保护路由8.4.3 添加登录表单8.4.4 登入用户8.4.5 登出用户8.4.6 理解Flask-Login的运作方式8.4.7 登录测试8 用户身份验证8.4 使用Flask-Login验证用户身8 用户身份验证8.5 注册新用户8.5.1 添加用户注册表单8.5.2 注册新用户8 用户身份验证8.

9、5 注册新用户8.5.1 添加用户注册表8 用户身份验证8.6 确认账户8.6.1 使用itsdangerous生成确认令牌8.6.2 发送确认邮件8 用户身份验证8.6 确认账户8.6.1 使用itsdan第二部分 实例:社交博客应用9 用户角色9.2 赋予角色9.3 检验角色9.1 角色在数据库中的表示第二部分 实例:社交博客应用9 用户角色9.2 赋予角色9.10 用户资料 10.1 资料信息01 10.2 用户资料页面0210.3.1 用户级资料编辑器10.3.2 管理员级资料编辑器10.3 资料编辑器03 10.4 用户头像0410 用户资料 10.1 资料信息01 10.2 用户资

10、料页11 博客文章211.2 在资料页中显示博客文章311.3 分页显示长博客文章列表111.1 提交和显示博客文章611.6 博客文章编辑器511.5 博客文章的固定链接411.4 使用Markdown和FlaskDown支持富文本文章11 博客文章211.2 在资料页中显示博客文章311.3 11 博客文章11.3 分页显示长博客文章列表11.3.1 创建虚拟博客文章数据11.3.2 在页面中渲染数据11.3.3 添加分页导航11 博客文章11.3 分页显示长博客文章列表11.3.1 11 博客文章11.4 使用Markdown和FlaskDown支持富文本文章11.4.1 使用Flask

11、Down11.4.2 在服务器端处理富文本11 博客文章11.4 使用Markdown和Flask-P12 关注者12.1.1 多对多关系12.1.2 自引用关系12.1.3 高级多对多关系12.1 再论数据库关系 12.4 在首页显示所关注用户的文章 12.2 在资料页面中显示关注者 12.3 使用数据库联结查询所关注用户的文章12 关注者12.1.1 多对多关系12.1 再论数据库关系第二部分 实例:社交博客应用13 用户评论CBA13.1 评论在数据库中的表示13.2 提交和显示评论13.3 管理评论第二部分 实例:社交博客应用13 用户评论CBA13.1 评14 应用编程接口14.2

12、使用Flask实现REST式Web服务14.1 REST简介14 应用编程接口14.2 使用Flask实现REST式We14 应用编程接口14.1 REST简介14.1.1 资源就是一切14.1.2 请求方法14.1.3 请求和响应主体14.1.4 版本14 应用编程接口14.1 REST简介14.1.1 资源就14 应用编程接口14.2 使用Flask实现REST式Web服务14.2.1 创建API蓝本14.2.2 错误处理14.2.3 使用Flask-HTTPAuth验证用户身份14.2.4 基于令牌的身份验证14.2.5 资源和JSON的序列化转换14.2.6 实现资源的各个端点14.2

13、.7 分页大型资源集合14.2.8 使用HTTPie测试Web服务14 应用编程接口14.2 使用Flask实现REST式We08第三部分 成功在望08第三部分 成功在望15 测试15.4 值得测试吗15.1 获取代码覆盖度报告15.2 Flask测试客户端15.3 使用Selenium进行端到端测试 15.2.1 测试Web应用15.2.2 测试Web服务15 测试15.4 值得测试吗15.1 获取代码覆盖度报告1第三部分 成功在望16 性能020116.2 分析源码16.1 在日志中记录影响性能的缓慢数据库查询第三部分 成功在望16 性能020116.2 分析源码16.17 部署AEDFB

14、C17.2 把生产环境中的错误写入日志17.3 云部署17.5 Docker容器17.4 Heroku平台17.6 传统部署方式17.1 部署流程17 部署AEDFBC17.2 把生产环境中的错误写入日志117 部署17.4 Heroku平台17.4.1 准备工作17.4.2 使用heroku local测试17.4.3 执行git push命令部署17.4.4 升级后重新部署17 部署17.4 Heroku平台17.4.1 准备工作17 部署17.5 Docker容器17.5.1 安装Docker17.5.2 构建容器映像17.5.3 运行容器17.5.4 审查运行中的容器17.5.5 把容器映像推送到外部注册处17 部署17.5 Docker容器17.5.1 安装Doc17 部署17.5 Docker容器17.5.6 使用外部数据库17.5.7 使用Docker Compose编排容器17.5.8 清理旧容器和映像17.5.9 在生产环境中使用Docker17 部署17.5 Docker容器17.5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论