PythonFlaskWeb开发入门与项目实战

PythonFlaskWeb开发入门与项目实战

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

从Flask框架的基础知识讲起,逐步深入到使用Flask进行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模型与表映射方法1

6.7 Flask-SQLAlchemy模型与表映射方法2

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 习题

PythonFlaskWeb开发入门与项目实战是2019年由机械工业出版社华章分社出版,作者钱游。

得书感谢您对《PythonFlaskWeb开发入门与项目实战》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
iOS开发项目化入门教程 电子书
本书讲解了iOS开发中的基础理论及其界面编程技术,包括iOS平台、iOS设备、iOS8新特性、常用控件的开发、表视图、多视图控制器、五种数据存储方式、常用设计模式、手势识别及动画等。
FlutterApp开发:从入门到实战 电子书
本书系统讲解使用Flutter进行跨平台开发应具备的知识,包含丰富的代码示例与效果图片,组件功能一目了然。
Android开发案例教程与项目实战(在线实验+在线自测) 电子书
本书分基础篇和提高篇两部分,共11章。基础篇包括第1~5章,提高篇包括第6~11章。第1章是初识Android,介绍Android基本知识、环境的安装与搭建。第2章是Android核心组件,介绍常用组件的功能和用法。第3章是界面视图,介绍常用视图组件的使用。第4章是数据存储,介绍常用的数据存储方式。第5章是项目实战:实验吧,串联前4章所学知识进行综合应用。第6章是多媒体,介绍MediaPlayer
Flutter基础与实战:从入门到APP跨平台开发 电子书
本书旨在帮助读者快速入门Flutter、掌握Flutter开发技能,从而具备一定的Flutter跨平台开发能力。
Jupyter入门与实战 电子书
本书全面讲解Jupyter的功能、应用、体系架构、配置和部署等内容。全书共8章,前4章面向希望学习Python、数据科学及人工智能相关知识,但尚无软件开发基础的读者,以零起点的方式讲述Jupyter的功能与操作,并以JupyterNotebook为工具,讲述Python的基础知识,以及使用Python开展数据科学工作的入门内容;后4章深入讲述Jupyter的高级应用、配置、管理,以及Jupyter