-
内容大纲
本书从Flask框架的基础知识讲起,逐步深入到使用F1ask进行Web应用开发实战。其中,重点介绍了使用Flask+SQLAlchemy进行服务端开发,以及使用Jinja 2模板引擎和Bootstrap进行前端页面开发的方法,不但可以让读者系统地学习用Python微型框架开发Web应用的相关知识,而且还能对Web开发中基于角色访问权限控制的方法等相关知识有更为深入的理解。本书提供了大量的实战案例引导读者由浅入深地学习Flask Web应用开发,可以让读者的开发水平有质的提升。
本书共16章,分为3篇。第1篇为Flask基础知识,介绍了Flask开发的环境部署及入门知识,内容涵盖了Flask程序的基本结构、Jinja 2模板、Web表单、SQLAlchemy管理数据库、装饰器的定义和使用、Memcached缓存技术等;第2篇为CMS新闻系统开发,介绍了数据库设计、数据库迁移、无限级分类的实现、登录日志、角色的访问权限控制等内容;第3篇为网站上线准备及部署,介绍了Web程序上线部署前必须要进行的单元测试、性能优化和环境部署等内容。
本书内容通俗易懂,案例丰富,实用性强,特别适合Python Web开发的入门读者和进阶读者学习,也适合PHP程序员和Java程序员等其他Web开发爱好者阅读。另外,本书可以作为相关培训机构的教材用书。 -
作者介绍
钱游,毕业于重庆大学计算机科学与技术专业。有十余年的软件开发经验,先后在西部数码成都西维数码科技有限公司和中企动力重庆分公司任职,历任Java程序员、系统架构师等职。参与开发过的项目有重庆力帆集团绩效考核系统、重庆国电睿霖电气有限公司暨物联网云平台、重庆科创职业学院官网、重庆城市职业学院官网等。长期使用Flask框架进行Web应用开发,在Web开发、微商城开发、Android移动开发等领域有丰富的实战经验。现从事移动互联网与物联网应用等领域的研究。 -
目录
前言
本书内容导图
第1篇 Flask基础知识
第1章 开发环境部署
1.1 Python的安装及配置
1.1.1 Python的安装
1.1.2 测试Python是否安装成功
1.2 虚拟环境的配置
1.3 PyCharm的安装及使用
1.3.1 PyCharm的下载及安装
1.3.2 在PyCharm中新建工程
1.3.3 在PyCharm中设置UTF-8编码自动创建
1.3.4 在PyCharm中使用已经设置好的虚拟环境
1.4 温故知新
1.5 习题
第2章 Flask快速上手
2.1 Web基础知识
2.2 第一个Flask Web程序
2.2.1 安装Flask框架
2.2.2 在Flask中输出Hello World
2.3 URL传递参数
2.4 URL反转
2.5 页面跳转和重定向
2.6 温故知新
2.7 习题
第3章 Jinja 2模板引擎
3.1 模板引擎概述及简单使用
3.2 向模板中传递参数
3.3 模板中的控制语句之if语句
3.4 模板中的控制语句之for语句
3.5 Flask的过滤器
3.5.1 常见过滤器
3.5.2 自定义过滤器
3.6 宏的定义及使用
3.6.1 宏的定义
3.6.2 宏的导入
3.6.3 include的使用
3.7 set和with语句的使用
3.8 静态文件的加载
3.9 模板的继承
3.10 温故知新
3.11 习题
第4章 Flask视图高级技术
4.1 app.route与add_url_rule简介
4.1.1 app.route的使用
4.1.2 add_url_rule的使用
4.2 Flask类视图
4.2.1 标准类视图
4.2.2 基于方法的类视图
4.3 Flask装饰器
4.3.1 装饰器的定义和基本使用
4.3.2 对带参数的函数使用装饰器
4.4 蓝图
4.5 温故知新
4.6 习题
第5章 Flask数据交互
5.1 使用Flask处理表单
5.1.1 使用Flask处理通用表单
5.1.2 使用Flask-WTF处理表单
5.2 使用Flask上传文件
5.2.1 使用Flask上传文件的简单实现
5.2.2 改进上传功能
5.3 Cookie的使用
5.3.1 Cookie的基本概念
5.3.2 Cookie的基本使用
5.3.3 设置Cookie的作用域
5.4 Session的使用
5.4.1 Session的基本配置
5.4.2 Session的基本使用
5.5 钩子函数的使用
5.6 温故知新
5.7 习题
第6章 访问数据库
6.1 MySQL数据库安装
6.1.1 下载及安装MySQL
6.1.2 测试MySQL是否安装成功
6.2 Python数据库框架MySQL-Python
6.2.1 MySQL-Python安装
6.2.2 通过Python操作数据库对象
6.3 通过MySQL-Python进行更新数据操作
6.3.1 增加数据
6.3.2 修改数据
6.3.3 删除数据
6.4 初识Flask-SQLAlchemy
6.4.1 SQLAlchemy的安装
6.4.2 对象-关系映射实质
6.4.3 为什么使用ORM
6.5 Flask-SQLAlchemy初始化
6.6 Flask-SQLAlchemy模型与表映射方法
6.7 Flask-SQLAlchemy模型与表映射方法
6.8 数据的增、删、改、查
6.8.1 数据添加
6.8.2 数据查询
6.8.3 数据修改
6.8.4 数据删除
6.9 使用Flask-SQLAlchemy创建一对一的关系表
6.10 使用Flask-SQLAlchemy创建一对多的关系表
6.11 使用Flask-SQLAlchemy创建多对多的关系表
6.12 Flask-Script工具的使用
6.12.1 安装Flask-Script并初始化
6.12.2 Command子类创建命令
6.12.3 使用Command实例的@command修饰符
6.12.4 使用Command实例的@option修饰符创建命令
6.13 Flask循环引用
6.14 使用Flask-Migrate实现数据库迁移
6.14.1 安装Flask-Migrate插件
6.14.2 使用Flask-Migrate的步骤
6.15 温故知新
6.16 习题
第7章 Memcached缓存系统
7.1 Memcached的安装
7.1.1 Memcached的基本概念
7.1.2 Memcached的安装
7.2 Memcached的基本使用
7.2.1 set和set_multi命令的使用
7.2.2 get和get_multi命令的使用
7.2.3 add命令的使用
7.2.4 replace命令的使用
7.2.5 append和prepend命令的使用
7.2.6 delete和delete_multi命令的使用
7.2.7 decr和incr命令的使用
7.3 Memcached的安全机制
7.4 温故知新
7.5 习题
第8章 Bootstrap的基本使用
8.1 Bootstrap简介
8.2 全局CSS样式
8.3 栅格系统
8.4 Bootstrap CSS代码
8.5 Bootstrap表格
8.5.1 基础表格
8.5.2 条纹状表格
8.5.3 带边框的表格
8.5.4 紧凑的表格和响应式表格
8.5.5 状态类
8.6 Bootstrap表单
8.6.1 垂直表单
8.6.2 内联表单
8.6.3 水平表单
8.6.4 支持的表单控件
8.7 Bootstrap按钮
8.8 温故知新
8.9 习题
第2篇 CMS新闻系统开发
第9章 CMS后台管理员登录实现
9.1 CMS系统基本蓝图
9.2 用户模型定义
9.2.1 建立数据库连接并创建用户模型
9.2.2 用户登录密码明文变密文的处理
9.3 管理员登录
9.3.1 登录页的渲染
9.3.2 初步实现用户的登录
9.3.3 优化登录-对表单进行过滤验证
9.3.4 优化登录-启用登录验证码
9.3.5 优化登录-记住我功能实现
9.4 限制用户访问
9.5 用户名注销功能实现
9.6 温故知新
9.7 习题
第10章 CMS后台文章模块基本功能实现
10.1 管理员信息展示
10.1.1 管理员个人详情页搭建
10.1.2 管理员个人详情页实现
10.1.3 管理员密码修改
10.2 文章栏目页的实现
10.2.1 栏目无限级分类添加进数据库
10.2.2 栏目的编辑功能
10.2.3 栏目的删除功能
10.3 文章的添加、修改、删除功能的实现
10.3.1 文章添加功能的基本实现
10.3.2 文章的列表显示
10.3.3 文章的编辑修改
10.3.4 文章的删除
10.4 温故知新
10.5 习题
第11章 CMS后台基本评论及登录日志等功能的实现
11.1 评论信息管理
11.1.1 评论信息管理页面搭建
11.1.2 评论的下架和发布功能实现
11.1.3 评论的删除功能实现
11.2 登录日志、操作日志等功能实现
11.2.1 登录日志功能的实现
11.2.2 登录日志批量删除功能的实现
11.3 温故知新
11.4 习题
第12章 基于角色的访问控制功能实现
12.1 权限、角色、用户的数据库设计
12.2 权限管理
12.2.1 添加权限
12.2.2 权限的列表显示
12.2.3 权限的编辑
12.2.4 权限的删除
12.3 角色管理
12.3.1 角色的添加
12.3.2 角色的列表显示
12.3.3 角色的编辑功能实现
12.3.4 角色的删除功能实现
12.4 基于角色的访问控制思想及实现
12.5 温故知新
12.6 习题
第13章 CMS网站前台功能实现
13.1 用户的注册和登录功能
13.1.1 用户注册页面的设计
13.1.2 用户注册功能的实现
13.1.3 用户登录功能的实现
13.2 网站首页的基本实现
13.3 文章详情页功能实现
13.4 网站404页面功能实现
13.5 温故知新
13.6 习题
第14章 CMS系统代码优化
14.1 CSRF攻击与防御
14.2 视图函数的一些优化
14.3 将验证码保存到Memcached中
14.4 温故知新
14.5 习题
第3篇 网站上线准备及部署
第15章 CMS系统性能测试与单元测试
15.1 慢查询SQL的检测与记录
15.2 Flask单元测试
15.3 温故知新
15.4 习题
第16章 网站部署
16.1 服务器部署
16.1.1 Gunicorn的安装配置及使用
16.1.2 Nginx的安装及使用
16.1.3 安装MySQL
16.2 网站部署
16.3 温故知新
16.4 习题
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...