第一阶段:Flask基础
1. Flask简介与环境搭建
1.1 Flask框架的特点和适用场景
框架特点:
- 代码库精简,仅提供核心功能(路由、模板、请求/响应处理),其他功能通过扩展实现。
- 不限制目录布局,开发者可自由组织代码(适合小型项目或按需定制的大型项目)。
- 支持动态 HTML 渲染,模板继承、过滤器等功能,分离业务逻辑与展示层。
适用场景:
- 适合初创项目快速验证想法,后期可扩展为复杂系统。
- 作为独立微服务组件,与其他服务(如数据库、消息队列)协同工作。
- 结合 Python 生态(如 Pandas 数据分析、机器学习模型)提供 Web 接口。
1.2 安装Flask
|
|
1.3 创建第一个Flask应用
1.4 理解开发服务器和调试模式
2. 路由与视图
- 基本路由定义
- URL变量规则
- HTTP方法处理
- URL构建(
url_for) - 重定向和错误处理
3. 请求与响应
- 请求对象(Request)的使用
- 响应对象(Response)的定制
- Cookies和会话(Session)
- 文件上传处理
4. 模板引擎(Jinja2)
- 模板渲染基础
- 变量和表达式
- 控制结构(if/for)
- 模板继承
- 自定义过滤器
- 转义与安全
第二阶段:进阶开发
5. 表单处理
- 使用Flask-WTF扩展
- 表单验证
- CSRF保护
- 文件上传表单处理
6. 数据库集成
- SQLAlchemy基础
- Flask-SQLAlchemy扩展
- 模型定义与关系
- 数据库迁移(Flask-Migrate)
- 基本CRUD操作
7. 用户认证
- 密码哈希与存储
- 登录/注销流程
- Flask-Login扩展
- 权限控制基础
8. 项目结构与蓝图
- 大型应用的项目结构
- 使用蓝图(Blueprints)组织代码
- 应用工厂模式
第三阶段:高级主题
9. RESTful API开发
- REST概念与设计原则
- Flask-RESTful扩展
- 请求解析与响应格式化
- JWT认证
10. 测试与调试
- 单元测试基础
- Flask测试客户端
- 测试覆盖率
- 调试技巧与工具
11. 部署与性能
- 生产环境配置
- WSGI服务器(Gunicorn/uWSGI)
- 静态文件处理
- Nginx反向代理
- 性能优化技巧
12. 常用扩展
- Flask-Mail(电子邮件)
- Flask-Caching(缓存)
- Flask-Admin(管理界面)
- Flask-SocketIO(实时通信)
第四阶段:项目实战
13. 综合项目开发
- 需求分析与设计
- 数据库设计
- 前端与后端集成
- 测试与部署
14. 最佳实践
- 安全最佳实践
- 代码组织与风格
- 文档编写
- 持续集成