Flask 项目实战 1: 功能介绍

Flask 项目实战 1: 功能介绍

在 Flask 教程的最后,讲解一个涉及多个 Flask 知识点的综合案例,一个功能完整的 Web 应用程序 —— 待做清单。该综合案例较大,将其分为 3 个部分:

  • Flask 项目实战 1功能介绍;
  • Flask 项目实战 2:后端实现;
  • Flask 项目实战 3:前端实现。

本小节首先介绍了待做清单的功能,然后讲解了程序的总体结构。

1. 功能简介

本节使用 Flask 开发一个功能完整的 Web 应用程序 —— 待做清单,该 Web 应用程序记录待做事项。程序提供了用户注册功能用户登录后,录入的待做事项被记录在服务端,如果换一台机器,使用浏览器登录后,仍然能够看到已经录入的待做事项。

下面的视频演示了待做清单的功能

2. 涉及的知识点

本节开发的待做清单程序,在保持程序简短时,尽可能融入了更多的知识点,包括

  • 模板
  • WTF 表单和表单验证
  • 蓝图
  • ORM 访问数据库
  • 会话 Session

3. 运行程序

3.1 源程序下载

3.2 源文件目录

程序由多个源文件构成,如下所示:

文件 描述
db.sql 创建数据库sql 脚本文件
app.py Flask 应用程序实例以及配置
main.py Flask 应用程序的入口
db.py 提供访问数据库功能函数
users.py 实现蓝图 users,提供登录注册功能
todos.py 实现蓝图 todos,提供增加修改删除待做事项 todo功能
templates/index.html 首页页面模板
templates/login.html 登录页面模板
templates/register.html 注册页面模板
static/style.css 样式文件
static/script.js 调用后端服务的接口

3.3 安装相关的库

为了使用 Flask 框架、数据库 ORM、表单验证等模块,使用 pip3 依次安装:

pip3 install flask
pip3 install pyMysqL
pip3 install sqlAlchemy
pip3 install flask-sqlalchemy
pip3 install wtforms
pip3 install flask-wtf

3.4 设置数据库

例子使用 MysqL 数据库用户名为 root,密码为 ‘123456’,可以在 db.py修改用户名密码

启动 MysqL 后,执行数据库脚本 db.sql 创建数据库 todoDB:

MysqL> source db.sql

3.5 运行程序

main.py 是程序的入口,执行如下命令启动程序:

$ python3 main.py

4. 程序的结构

图片描述

程序的核心结构如上图所示,程序由前端与后端构成。

前端的核心操作如下:

后端的核心操作如下:

5. 小结

本小节介绍了待做清单的功能和程序结构,使用思维导图描述如下:

图片描述