Python 现代开发学习笔记

(二十)把同一需求对应到三个框架

1. 共同需要保留的业务行为

无论使用哪个框架,这个书架仍然需要:解析输入,执行字段规则,确认当前用户与记录归属,处理数据库事务,再生成页面或 JSON。框架能组织重复流程,书籍是否可重复、哪个用户可以修改,仍由应用需求决定。

现有职责 FastAPI Flask Django
方法、路径与参数 路由函数与参数声明 路由与视图函数 URL 分发与视图
运行时字段校验 Pydantic 模型 在视图、表单工具或模型中组织校验 Form、ModelForm 等
页面输出 可连接模板工具 集成 Jinja 模板 模板系统
数据库与事务 连接选用的数据层 连接选用的数据层 ORM、事务与迁移
用户与后台 组合认证与权限逻辑 组合相应工具与扩展 集成用户、权限与管理后台
服务器接口 ASGI WSGI WSGI 或 ASGI

FastAPI 的模型、依赖组织与 OpenAPI 文档适合继续扩展这里的 JSON 接口;Flask 可以接着围绕视图与模板构建页面;Django 则把模型、账户和后台接到同一套项目组织中。这里按书架的任务安排学习方向,后面三章会分别做出相同业务的具体实现。FastAPI 功能、Flask 设计、Django 项目组成

相同书籍输入先对应路由校验身份数据响应,再映射到三个框架的组件,业务规则始终保持一致

笔记正文与全部题解 · Ctrl / ⌘ K