博客项目

  • 一局王者的时间轻松学会用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)校验函数
  • 用户登录与退出(练习)
10-06 16:11