博客项目
-
一局王者的时间轻松学会用Flask建立一个属于自己的博客。
需求分析
-
用户注册登录
- 用户信息管理
- 博客发表回复
- 博客列表展示
- 博客分页展示
- 博客收藏点赞
- 搜索、统计、排序、…
目录结构
blog/ # 项目根目录
manage.py # 启动控制文件
requirements.txt # 依赖包列表文件
venv/ # 虚拟环境目录
migrations/ # 数据库迁移文件目录
tests/ # 测试文件目录
app/ # 整个程序目录
templates/ # 模板文件目录
common/ # 通用模板
email/ # 邮件模板
...
static/ # 静态文件目录
img/ # 图片
css/ # CSS文件
js/ # JS文件
favicon.ico # 收藏夹图标
views/ # 蓝本文件目录
models.py # 数据模型文件
forms.py # 表单类文件
config.py # 配置文件
extensions.py # 扩展文件(所有扩展)
email.py # 邮件发送函数
__init__.py # 包文件
项目准备
- 根据目录结构,创建相关目录及文件
- 书写配置文件(配置类)
- 使用配置文件:定义工厂函数创建app完成初始化配置,然后返回,在启动控制文件中调用工厂函数
- 添加各种扩展(导入类库、创建对象、初始化函数),在看得见app的地方调用初始化函数即可
- 添加各种蓝本,并封装函数完成注册,采用类似于添加扩展的套路。
- 移植邮件发送函数,其实就是粘贴第四天封装的邮件发送函数,导入相关依赖即可。
- 定制项目基础模板,并通过定制首页完成测试
用户管理
- 用户注册与激活
- 创建用户注册的模板文件
- 添加用户注册的视图函数,并渲染注册的模板文件
- 在导航条上添加点击跳转的链接
- 添加用户注册表单类并完成渲染和校验
- 注册激活邮件发送
- 激活邮件中携带用户信息
- 账户激活校验处理
- 练习:添加字段(usename、email)校验函数
- 用户登录与退出(练习)