成功加入购物车
图书条目标准图
全新正版未拆封
[印]沙拉比·阿加沃尔 著;张骞 译 / 清华大学出版社 / 2020-06 / 其他
售价 ¥ 58.45
品相 全新
优惠 满包邮
延迟发货说明
上书时间2023-06-28
卖家超过10天未登录
Flask Web开发从入门到精通(第2版)
本书详细阐述了与Flask开发相关的基本解决方案,主要包括“配置Flask”“基于Jinja2的模板机制”“Flask中的数据模型”“与视图协同工作”“WTForms”“Flask中的身份验证机制”“构建RESTful API”“Flask应用程序管理接口”“国际化和本地化”“调试、错误处理和测试”“部署和后期部署”“微服务和容器”“提示和技巧”等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。
第1章 配置Flask 1 1.1 利用virtualenv设置开发环境 3 1.1.1 实现方式 3 1.1.2 工作方式 3 1.1.3 更多内容 4 1.1.4 另请参阅 5 1.2 处理基本的配置问题 5 1.2.1 准备工作 5 1.2.2 实现方式 6 1.2.3 工作方式 7 1.3 配置基于类的设置 7 1.3.1 实现方式 7 1.3.2 工作方式 8 1.4 组织静态文件 8 1.4.1 实现方式 8 1.4.2 工作方式 9 1.4.3 更多内容 9 1.5 特定于部署的实例文件夹 10 1.5.1 实现方式 10 1.5.2 工作方式 11 1.6 视图和模型的组合 11 1.6.1 实现方式 11 1.6.2 工作方式 13 1.6.3 另请参阅 14 1.7 利用Blueprint创建模块化的Web应用程序 14 1.7.1 准备工作 14 1.7.2 实现方式 14 1.7.3 工作方式 15 1.7.4 另请参阅 16 1.8 通过setuptools安装Flask应用程序 16 1.8.1 实现方式 16 1.8.2 工作方式 17 1.8.3 另请参阅 17 第2章 基于Jinja2的模板机制 19 2.1 引导推荐的布局 20 2.1.1 准备工作 20 2.1.2 实现方式 20 2.1.3 工作方式 21 2.2 实现块组合和布局继承 22 2.2.1 准备工作 22 2.2.2 实现方式 22 2.2.3 工作方式 26 2.3 创建自定义上下文处理器 28 2.4 创建自定义Jinja2过滤器 29 2.4.1 实现方式 29 2.4.2 工作方式 30 2.4.3 另请参阅 31 2.5 为表单创建自定义宏 31 2.5.1 准备工作 31 2.5.2 实现方式 31 2.6 高级日期和时间格式 32 2.6.1 准备工作 32 2.6.2 实现方式 33 2.6.3 另请参阅 34 第3章 Flask中的数据模型 35 3.1 创建SQLAlchemy DB实例 35 3.1.1 准备工作 36 3.1.2 实现方式 36 3.1.3 更多内容 37 3.1.4 另请参阅 38 3.2 创建基本的产品模型 38 3.2.1 实现方式 38 3.2.2 工作方式 41 3.2.3 另请参阅 41 3.3 创建关系分类模型 41 3.3.1 实现方式 41 3.3.2 另请参阅 44 3.4 利用Alembic和Flask-Migrate迁移数据库 44 3.4.1 准备工作 45 3.4.2 实现方式 45 3.4.3 工作方式 46 3.4.4 另请参阅 47 3.5 基于Redis的索引模型数据 47 3.5.1 准备工作 48 3.5.2 实现方式 48 3.5.3 工作方式 49 3.6 基于MongoDB的NoSQL方式 49 3.6.1 准备工作 49 3.6.2 实现方式 50 3.6.3 另请参阅 52 第4章 与视图协同工作 53 4.1 编写基于函数的视图和URL路由 53 4.1.1 准备工作 53 4.1.2 实现方式 54 4.1.3 工作方式 55 4.1.4 更多内容 55 4.2 编写基于类的视图 56 4.2.1 准备工作 56 4.2.2 实现方式 56 4.2.3 工作方式 57 4.2.4 更多内容 57 4.2.5 另请参阅 58 4.3 实现URL路由机制和基于产品的分页机制 58 4.3.1 准备工作 58 4.3.2 实现方式 58 4.3.3 另请参阅 60 4.4 渲染至模板 60 4.4.1 准备工作 60 4.4.2 实现方式 60 4.4.3 工作方式 64 4.4.4 另请参阅 65 4.5 处理XHR请求 65 4.5.1 准备工作 65 4.5.2 实现方式 65 4.5.3 工作方式 67 4.6 使用装饰器处理请求 67 4.6.1 准备工作 67 4.6.2 实现方式 67 4.6.3 另请参阅 68 4.7 创建自定义的404和500处理程序 68 4.7.1 准备工作 69 4.7.2 实现方式 69 4.7.3 工作方式 69 4.7.4 更多内容 70 4.8 闪动消息以获得更好的用户反馈 70 4.8.1 准备工作 70 4.8.2 实现方式 70 4.8.3 工作方式 73 4.9 实现基于SQL的搜索机制 73 4.9.1 准备工作 74 4.9.2 实现方式 74 4.9.3 工作方式 75 第5章 WTForms 77 5.1 将SQLAlchemy模型数据表示为表单 77 5.1.1 准备工作 78 5.1.2 实现方式 78 5.1.3 工作方式 80 5.1.4 另请参阅 80 5.2 验证服务器端上的字段 80 5.2.1 实现方式 81 5.2.2 工作方式 82 5.2.3 更多内容 83 5.2.4 另请参阅 83 5.3 创建公共表单集合 83 5.3.1 实现方式 84 5.3.2 工作方式 85 5.4 创建自定义字段和验证 86 5.4.1 实现方式 86 5.4.2 工作方式 87 5.4.3 更多内容 87 5.5 创建自定义微件 88 5.5.1 实现方式 88 5.5.2 工作方式 89 5.5.3 另请参阅 89 5.6 通过表单上传文件 90 5.6.1 实现方式 90 5.6.2 工作方式 92 5.7 保护应用程序免受跨站点请求伪造(CSRF) 93 5.7.1 实现方式 93 5.7.2 工作方式 95 第6章 Flask中的身份验证机制 97 6.1 创建简单的基于会话的身份验证 97 6.1.1 准备工作 98 6.1.2 实现方式 98 6.1.3 工作方式 103 6.1.4 另请参阅 104 6.2 基于Flask-Login扩展的身份验证 104 6.2.1 准备工作 105 6.2.2 实现方式 105 6.2.3 工作方式 108 6.2.4 更多内容 108 6.2.5 另请参阅 108 6.3 使用Facebook进行身份验证 108 6.3.1 准备工作 108 6.3.2 实现方式 110 6.3.3 工作方式 112 6.4 使用Google进行身份验证 112 6.4.1 准备工作 113 6.4.2 实现方式 114 6.4.3 工作方式 115 6.5 使用Twitter进行身份验证 115 6.5.1 准备工作 116 6.5.2 实现方式 116 6.5.3 工作方式 118 6.6 基于LDAP的身份验证机制 118 6.6.1 准备工作 118 6.6.2 实现方式 119 6.6.3 工作方式 122 6.6.4 另请参阅 123 第7章 构建RESTful API 125 7.1 创建基于类的REST接口 126 7.1.1 准备工作 126 7.1.2 实现方式 126 7.1.3 工作方式 127 7.2 创建基于扩展的REST接口 127 7.2.1 准备工作 128 7.2.2 实现方式 128 7.2.3 工作方式 129 7.2.4 另请参阅 129 7.3 创建完整的RESTful API 130 7.3.1 准备工作 130 7.3.2 实现方式 130 7.3.3 工作方式 132 第8章 Flask应用程序管理接口 135 8.1 创建简单的CRUD接口 135 8.1.1 准备工作 136 8.1.2 实现方式 136 8.1.3 工作方式 139 8.2 使用Flask-Admin扩展 141 8.2.1 准备工作 141 8.2.2 实现方式 141 8.2.3 工作方式 142 8.2.4 更多内容 142 8.3 利用Flask-Admin注册模型 143 8.3.1 准备工作 143 8.3.2 实现方式 143 8.3.3 工作方式 145 8.4 创建自定义表单和操作 146 8.4.1 准备工作 146 8.4.2 实现方式 146 8.4.3 工作方式 148 8.5 使用WYSIWYG(所见即所得)编辑器 148 8.5.1 准备工作 149 8.5.2 实现方式 149 8.5.3 工作方式 150 8.5.4 另请参阅 151 8.6 创建用户角色 151 8.6.1 准备工作 151 8.6.2 实现方式 152 8.6.3 工作方式 154 第9章 国际化和本地化 155 9.1 添加一种新语言 155 9.1.1 准备工作 155 9.1.2 实现方式 156 9.1.3 工作方式 158 9.1.4 更多内容 159 9.1.5 另请参阅 159 9.2 实现延迟处理和gettext/ngettext函数 159 9.2.1 准备工作 160 9.2.2 实现方式 160 9.3 实现全球语言切换操作 161 9.3.1 准备工作 161 9.3.2 实现方式 162 9.3.3 工作方式 163 9.3.4 另请参阅 163 第10章 调试、错误处理和测试 165 10.1 设置基本的文件日志系统 166 10.1.1 准备工作 166 10.1.2 实现方式 166 10.1.3 工作方式 167 10.1.4 更多内容 168 10.1.5 另请参阅 168 10.2 在出现错误时发送电子邮件 168 10.2.1 准备工作 169 10.2.2 工作方式 169 10.2.3 工作方式 170 10.2.4 更多内容 170 10.3 使用Sentry监视异常 170 10.3.1 准备工作 170 10.3.2 实现方式 170 10.3.3 工作方式 172 10.4 基于pdb的调试机制 172 10.4.1 准备工作 172 10.4.2 实现方式 173 10.4.3 工作方式 173 10.4.4 另请参阅 173 10.5 创建简单的测试 174 10.5.1 准备工作 174 10.5.2 实现方式 174 10.5.3 工作方式 175 10.5.4 另请参阅 175 10.6 针对视图和逻辑编写多项测试 176 10.6.1 准备工作 176 10.6.2 实现方式 176 10.6.3 工作方式 179 10.7 nose库集成 179 10.7.1 准备工作 180 10.7.2 实现方式 180 10.7.3 另请参阅 180 10.8 使用Mocking避免访问API 181 10.8.1 准备工作 181 10.8.2 实现方式 182 10.8.3 工作方式 184 10.8.4 另请参阅 184 10.9 确定测试覆盖率 184 10.9.1 准备工作 184 10.9.2 实现方式 185 10.9.3 工作方式 186 10.9.4 另请参阅 187 10.10 使用性能分析查找瓶颈 187 10.10.1 准备工作 187 10.10.2 实现方式 187 10.10.3 工作方式 187 第11章 部署和后期部署 189 11.1 基于Apache的部署机制 189 11.1.1 准备工作 190 11.1.2 实现方式 191 11.1.3 工作方式 192 11.1.4 更多内容 192 11.1.5 另请参阅 193 11.2 基于uWSGI和Nginx的部署机制 193 11.2.1 准备工作 193 11.2.2 实现方式 193 11.2.3 另请参阅 195 11.3 基于Gunicorn和Supervisor的部署机制 195 11.3.1 准备工作 196 11.3.2 实现方式 196 11.3.3 工作方式 197 11.3.4 另请参阅 197 11.4 基于Tornado的部署 198 11.4.1 准备工作 198 11.4.2 实现方式 198 11.4.3 工作方式 199 11.5 针对文件上传使用S3存储 199 11.5.1 准备工作 199 11.5.2 实现方式 199 11.5.3 工作方式 201 11.5.4 另请参阅 201 11.6 基于Heroku的部署 201 11.6.1 准备工作 201 11.6.2 实现方式 202 11.6.3 准备工作 204 11.6.4 更多内容 204 11.7 基于AWS Elastic Beanstalk的部署机制 204 11.7.1 准备工作 204 11.7.2 实现方式 205 11.7.3 工作方式 206 11.8 利用New Relic管理和监控应用程序 208 11.8.1 准备工作 208 11.8.2 实现方式 209 11.8.3 工作方式 210 11.8.4 另请参阅 210 第12中 微服务和容器 211 12.1 基于Docker的容器化机制 211 12.1.1 准备工作 212 12.1.2 实现方式 213 12.1.3 工作方式 215 12.1.4 另请参阅 215 12.2 基于Kubernetes的编排容器 216 12.2.1 准备工作 216 12.2.2 实现方式 216 12.2.3 工作方式 218 12.2.4 更多内容 219 12.2.5 另请参阅 220 12.3 AWS Lambda上基于Zappa的无服务器操作 220 12.3.1 准备工作 220 12.3.2 实现方式 220 12.3.3 工作方式 223 12.3.4 另请参阅 224 第13章 提示和技巧 225 13.1 实现基于Whoosh的全文本搜索 225 13.1.1 准备工作 226 13.1.2 实现方式 226 13.1.3 工作方式 227 13.1.4 另请参阅 227 13.2 实现基于Elasticsearch的全文本搜索 227 13.2.1 准备工作 228 13.2.2 实现方式 228 13.2.3 工作方式 230 13.3 与信号协同工作 230 13.3.1 准备工作 230 13.3.2 实现方式 231 13.3.3 工作方式 232 13.3.4 另请参阅 232 13.4 在应用程序中使用缓存 232 13.4.1 准备工作 233 13.4.2 实现方式 233 13.4.3 工作方式 233 13.4.4 更多内容 234 13.4.5 另请参阅 234 13.5 实现Flask应用程序的电子邮件支持 234 13.5.1 准备工作 235 13.5.2 实现方式 235 13.5.3 工作方式 235 13.5.4 更多内容 236 13.5.5 另请参阅 237 13.6 了解异步操作 237 13.6.1 准备工作 237 13.6.2 实现方式 237 13.6.3 工作方式 238 13.7 与Celery协同工作 238 13.7.1 准备工作 238 13.7.2 实现方式 238 13.7.3 工作方式 240 13.7.4 另请参阅 240
展开全部
配送说明
...
相似商品
为你推荐
开播时间:09月02日 10:30