图书介绍

Flask Web开发实战 入门、进阶与原理解析2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Flask Web开发实战 入门、进阶与原理解析
  • 李辉著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111606598
  • 出版时间:2018
  • 标注页数:684页
  • 文件大小:116MB
  • 文件页数:705页
  • 主题词:软件工具-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Flask Web开发实战 入门、进阶与原理解析PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 基础篇2

第1章 初识Flask2

1.1搭建开发环境3

1.1.1 Pipenv工作流3

1.1.2安装Flask7

1.1.3集成开发环境8

1.2 Hello,Flask!11

1.2.1创建程序实例11

1.2.2注册路由12

1.3启动开发服务器14

1.3.1 Run,Flask,Run!14

1.3.2更多的启动选项18

1.3.3设置运行环境18

1.4 Python Shell20

1.5 Flask扩展21

1.6项目配置22

1.7 URL与端点23

1.8 Flask命令23

1.9模板与静态文件24

1.10 Flask与MVC架构25

1.11本章小结26

第2章 Flask与HTTP27

2.1请求响应循环27

2.2 HTTP请求29

2.2.1请求报文29

2.2.2 Request对象31

2.2.3在Flask中处理请求34

2.2.4请求钩子37

2.3 HTTP响应38

2.3.1响应报文39

2.3.1在Flask中生成响应40

2.3.2响应格式43

2.3.3来一块Cookie46

2.3.4 session:安全的Cookie49

2.4 Flask上下文54

2.4.1上下文全局变量54

2.4.2激活上下文55

2.4.3上下文钩子56

2.5 HTTP进阶实践57

2.5.1重定向回上一个页面57

2.5.2使用AJAX技术发送异步请求60

2.5.3 HTTP服务器端推送64

2.5.4 Web安全防范65

2.6本章小结74

第3章 模板75

3.1模板基本用法75

3.1.1创建模板76

3.1.2模板语法77

3.1.3渲染模板78

3.2模板辅助工具80

3.2.1上下文80

3.2.2全局对象82

3.2.3过滤器83

3.2.4测试器85

3.2.5模板环境对象87

3.3模板结构组织88

3.3.1局部模板88

3.3.2宏88

3.3.3模板继承90

3.4模板进阶实践93

3.4.1空白控制93

3.4.2加载静态文件94

3.4.3消息闪现98

3.4.4自定义错误页面100

3.4.5 JavaScript和CSS中的Jinja2101

3.5本章小结103

第4章 表单104

4.1 HTML表单104

4.2使用Flask-WTF处理表单106

4.2.1定义WTForms表单类106

4.2.2输出HTML代码109

4.2.3在模板中渲染表单110

4.3处理表单数据112

4.3.1提交表单112

4.3.2验证表单数据113

4.3.3在模板中渲染错误消息117

4.4表单进阶实践118

4.4.1设置错误消息语言118

4.4.2使用宏渲染表单120

4.4.3自定义验证器121

4.4.4文件上传122

4.4.5使用Flask-CKEditor集成富文本编辑器129

4.4.6单个表单多个提交按钮132

4.4.7单个页面多个表单133

4.5本章小结137

第5章 数据库138

5.1数据库的分类139

5.1.1 SQL139

5.1.2 NoSQL139

5.1.3如何选择?140

5.2 ORM魔法140

5.3使用Flask-SQLAlchemy管理数据库142

5.3.1连接数据库服务器142

5.3.2定义数据库模型144

5.3.3创建数据库和表145

5.4数据库操作146

5.4.1 CRUD147

5.4.2在视图函数里操作数据库151

5.5定义关系156

5.5.1配置Python Shell上下文157

5.5.2一对多158

5.5.3多对一164

5.5.4一对一165

5.5.5多对多166

5.6更新数据库表168

5.6.1重新生成表168

5.6.2使用Flask-Migrate迁移数据库169

5.6.3开发时是否需要迁移?171

5.7数据库进阶实践172

5.7.1级联操作172

5.7.2事件监听175

5.8本章小结177

第6章 电子邮件178

6.1使用Flask-Mail发送电子邮件179

6.1.1配置Flask-Mail179

6.1.2构建邮件数据182

6.1.3发送邮件182

6.2使用事务邮件服务SendGird183

6.2.1注册SendGird183

6.2.2 SendGrid SMTP转发185

6.2.3 SendGrid Web API转发185

6.3电子邮件进阶实践188

6.3.1提供HTML正文188

6.3.2使用Jinja2模板组织邮件正文189

6.3.3异步发送邮件191

6.4本章小结192

第二部分 实战篇194

第7章 留言板194

7.1使用包组织代码195

7.1.1配置文件196

7.1.2创建程序实例197

7.2 Web程序开发流程198

7.2.1程序功能设计199

7.2.1前端页面开发200

7.2.3后端程序开发202

7.3使用Bootstrap-Flask简化页面编写206

7.3.1加载资源文件207

7.3.2快捷渲染表单207

7.4使用 Flask-Moment本地化日期和时间209

7.4.1本地化前的准备209

7.4.2使用Flask-Moment集成Moment…js209

7.4.3渲染时间日期210

7.5使用Faker生成虚拟数据213

7.6使用Flask-DebugToolbar调试程序215

7.7 Flask配置的两种组织形式216

7.7.1环境变量优先217

7.7.2实例文件夹覆盖217

7.8本章小结218

第8章 个人博客219

8.1大型项目结构220

8.1.1使用蓝本模块化程序221

8.1.2使用类组织配置227

8.1.3使用工厂函数创建程序实例228

8.2编写程序骨架232

8.2.1数据库233

8.2.2模板240

8.2.3表单246

8.2.4视图函数249

8.2.5电子邮件支持249

8.3编写博客前台251

8.3.1分页显示文章列表251

8.3.2显示文章正文258

8.3.3文章固定链接259

8.3.4显示分类文章列表262

8.3.5显示评论列表263

8.3.6发表评论与回复266

8.3.7支持回复评论267

8.3.8网站主题切换269

8.4初始化博客271

8.4.1安全存储密码271

8.4.2创建管理员用户273

8.5使用Flask-Login管理用户认证275

8.5.1获取当前用户276

8.5.2登入用户277

8.5.3登出用户278

8.5.4视图保护279

8.6使用CSRFProtect实现CSRF保护281

8.7编写博客后台283

8.7.1文章管理284

8.7.2评论管理291

8.7.3分类管理297

8.8本章小结298

第9章 图片社交网站299

9.1项目组织架构300

9.1.1功能式架构300

9.1.2分区式架构302

9.1.3混合式架构303

9.1.4如何选择303

9.2编写程序骨架303

9.2.1数据库模型与虚拟数据305

9.2.2模板与静态文件307

9.3高级用户认证308

9.3.1用户注册309

9.3.2验证邮箱地址311

9.3.3使用装饰器过滤未确认用户315

9.3.4密码重置316

9.4基于用户角色的权限管理319

9.4.1角色与权限模型319

9.4.2设置角色与权限320

9.4.3写入角色与权限321

9.4.4验证用户权限323

9.5使用Flask-Dropzone优化文件上传325

9.5.1配置Flask-Dropzone326

9.5.2渲染上传区域328

9.5.3处理并保存上传图片329

9.6使用Flask-Avatars处理用户头像334

9.6.1默认头像335

9.6.2生成随机头像335

9.7图片展示与管理337

9.7.1在用户主页显示图片列表338

9.7.2图片详情页341

9.7.3上一张下一张跳转342

9.7.4删除确认模态框344

9.7.5举报图片346

9.7.6图片描述347

9.7.7图片标签349

9.7.8用户资料弹窗353

9.8收藏图片358

9.8.1使用关联模型表示多对多关系358

9.8.2添加和取消收藏360

9.8.3收藏者和收藏页面362

9.9用户关注365

9.9.1自引用多对多关系365

9.9.2关注与取消关注366

9.9.3显示关注用户列表369

9.9.4使用AJAX在弹窗中执行关注操作371

9.10消息提醒378

9.10.1提醒消息在数据库中的表示379

9.10.2创建提醒379

9.10.3显示和管理提醒380

9.10.4通过轮询实时更新未读计数382

9.11用户资料与账户设置384

9.11.1编辑个人资料385

9.11.2自定义头像386

9.11.3更改密码392

9.11.4提醒消息开关394

9.11.5将收藏设为仅自己可见395

9.11.6注销账户396

9.12首页与探索397

9.12.1获取正在关注用户的图片399

9.12.2使用联结和分组查询获取热门标签401

9.12.3使用数据库通用函数获取随机图片402

9.13使用Flask-Whooshee实现全文搜索403

9.13.1创建索引404

9.13.2搜索表单405

9.13.3显示搜索结果406

9.14编写网站后台407

9.14.1用户管理408

9.14.2资源管理411

9.14.3面向管理员的用户资料编辑412

9.15本章小结413

第10章 待办事项程序415

10.1使用JavaScript和AJAX编写单页程序417

10.1.1单页程序的模板组织418

10.1.2在根页面内切换子页面421

10.1.3生成测试账户423

10.1.4添加新待办条目424

10.2国际化与本地化426

10.2.1使用Flask-Babel集成Babel427

10.2.2区域和语言427

10.2.3文本的国际化432

10.2.4文本的本地化433

10.2.5时间与日期的本地化438

10.3设计并编写Web API440

10.3.1认识Web API441

10.3.2设计优美实用的Web API443

10.3.3使用Flask编写Web API446

10.3.4使用OAuth认证453

10.3.5资源的序列化461

10.3.6资源的反序列化465

10.3.7 Web API的测试与发布470

10.4本章小结473

第11章 在线聊天室474

11.1编写程序骨架476

11.2 Gravatar头像477

11.3使用Flask-SocketIO建立实时双向通信480

11.3.1建立Socket.IO连接481

11.3.2一条消息的旅程482

11.3.3在线人数统计485

11.3.4通信频道分离486

11.4使用Flask-OAuthlib实现第三方登录489

11.4.1编写OAuth客户端490

11.4.2注册OAuth程序491

11.4.3处理OAuth2授权493

11.4.4处理OAuth1授权505

11.5聊天室功能增强507

11.5.1无限滚动加载历史消息507

11.5.2 Markdown支持510

11.5.3代码语法高亮512

11.5.4标签页消息提醒515

11.5.5浏览器桌面通知517

11.5.6消息管理519

11.6本章小结519

第三部分 进阶篇522

第12章 自动化测试522

12.1认识自动化测试522

12.2 Flask测试客户端523

12.3使用unittest编写单元测试525

12.3.1 Flask程序的测试固件525

12.3.2编写测试用例527

12.3.3组织测试533

12.3.4运行测试535

12.4使用Selenium进行用户界面测试536

12.4.1安装浏览器与驱动537

12.4.2准备测试环境538

12.4.3编写测试代码539

12.5使用Coverage.py计算测试覆盖率541

12.5.1基本用法542

12.5.2获取测试覆盖率543

12.6使用Flake8检查代码质量544

12.7本章小结546

第13章 性能优化547

13.1程序性能分析548

13.1.1函数性能分析548

13.1.2数据库查询分析549

13.2使用Flask-Caching设置缓存551

13.2.1缓存视图函数552

13.2.2缓存其他函数554

13.2.3更新缓存554

13.2.4使用Redis作为缓存后端556

13.3使用Flask-Assets优化静态资源557

13.3.1注册资源集558

13.3.2生成资源集文件559

13.3.3在模板中加载资源集559

13.4本章小结562

第14章 部署上线563

14.1传统部署VS云部署563

14.2基本部署流程564

14.3部署前的准备566

14.3.1更新程序配置566

14.3.2创建生产环境专用的程序实例567

14.3.3设置迁移工具568

14.3.4程序日志568

14.3.5手动导入环境变量572

14.3.6 HTTPS转发572

14.4部署到Linux服务器573

14.4.1使用OpenSSH登录远程主机573

14.4.2安装基本库和工具574

14.4.3安全防护措施575

14.4.4推送代码并初始化程序环境578

14.4.5使用Gunicom运行程序579

14.4.6使用Nginx提供反向代理580

14.4.7使用Supervisor管理进程584

14.4.8更新部署后的程序586

14.5部署到PythonAnywhere587

14.5.1反向代理设置587

14.5.2创建PythonAnywhere程序588

14.5.3推送代码并初始化程序环境588

14.5.4创建数据库590

14.5.5设置虚拟环境591

14.5.6静态文件592

14.5.7运行和更新程序592

14.6部署到Heroku594

14.6.1通过Heroku Git部署595

14.6.2使用GitHub部署601

14.7下一步做什么?603

14.8本章小结604

第15章 Flask扩展开发605

15.1扩展的命名606

15.2扩展项目骨架606

15.3编写扩展类608

15.4添加扩展配置610

15.5实现扩展功能610

15.5.1加载静态资源611

15.5.2创建分享组件612

15.5.3在移动设备上隐藏613

15.6开源发布前的准备614

15.6.1添加文档字符串与注释614

15.6.2编写README与文档615

15.6.3为打包做准备616

15.6.4编写示例程序621

15.6.5编写单元测试621

15.7发布到PyPI622

15.7.1创建PypI账号623

15.7.2使用setuptools打包623

15.7.3使用twine上传625

15.8编写良好的扩展625

15.9本章小结627

第16章 Flask工作原理与机制解析628

16.1阅读 Flask源码628

16.1.1获取Flask源码628

16.1.2如何阅读源码629

16.1.3 Flask发行版本分析637

16.2 Flask的设计理念638

16.2.1“微”框架638

16.2.2两个核心依赖638

16.2.3显式程序对象638

16.2.4本地上下文639

16.2.5三种程序状态640

16.2.6丰富的自定义支持641

16.3 Flask与WSGI641

16.3.1 WSGI程序642

16.3.2 WSGI服务器643

16.3.3中间件644

16.4 Flask的工作流程与机制646

16.4.1 Flask中的请求响应循环646

16.4.2路由系统649

16.4.3本地上下文653

16.4.4请求与响应对象665

16.4.5 session667

16.4.6蓝本674

16.4.7模板渲染677

16.5本章小结680

附录A Flask资源681

热门推荐