2 Star 21 Fork 10

FastAPI Practices/fastapi_best_architecture

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT
Logo 包含了 FBA 三个字母抽象结合,形成了一个类似从地面扩散投影上来的闪电

FastAPI Best Architecture

简体中文 | English

企业级后端架构解决方案

🔥持续更新维护中🔥

GitHub Python MySQL PostgreSQL SQLAlchemy Pydantic v2 Ruff uv Docker Discord Discord

[!NOTE] 此仓库作为模板库公开,任何人或企业均可免费使用!

伪三层架构

mvc 架构作为常规设计模式,在 python web 中也很常见,但是三层架构更令人着迷

在 python web 开发中,三层架构的概念并没有通用标准,所以这里我们称之为伪三层架构

但请注意,我们并没有传统的多应用程序结构(django、springBoot...),如果您不喜欢这种模式,可以使用模板对其进行随意改造!

工作流程 java fastapi_best_architecture
视图 controller api
数据传输 dto schema
业务逻辑 service + impl service
数据访问 dao / mapper crud
模型 model / entity model

特性

  • 全局 FastAPI PEP 593 Annotated 参数风格
  • 全面 async/await + asgiref 异步设计
  • 遵循 RESTful API 规范
  • 使用 SQLAlchemy 2.0 全新语法
  • 使用 Pydantic v2 版本
  • 实现角色菜单 RBAC 访问控制
  • 集成 Casbin RBAC 访问控制
  • 支持 Celery 异步任务
  • 自研 JWT 认证中间件
  • 支持全局自定义时间时区
  • 支持 Docker / Docker-compose 部署
  • 集成 Pytest 单元测试

内置功能

  • 用户管理:分配角色和权限
  • 部门管理:配置组织架构(公司、部门、小组等)
  • 菜单管理:设置菜单及按钮级权限
  • 角色管理:配置角色、分配菜单和权限
  • 字典管理:维护常用参数和配置
  • 参数管理:系统常用参数动态配置
  • 通知公告:发布和维护系统通知公告信息
  • 令牌管理:检测在线状态,支持强制下线
  • 多端登录:支持一键切换多端登录模式
  • OAuth 2.0:内置自研 OAuth 2.0 授权登录
  • 插件系统:热插拔插件设计,降低耦合
  • 定时任务:支持定时,异步任务及函数调用
  • 代码生成:自动生成代码,支持预览、写入和下载
  • 操作日志:记录和查询正常和异常操作
  • 登录日志:记录和查询正常和异常登录
  • 缓存监控:查询系统缓存信息和命令统计
  • 服务监控:查看服务器硬件信息和状态
  • 接口文档:自动生成在线交互式 API 文档

开发部署

更多详情请查看 官方文档

贡献者

特别鸣谢

互动

Discord

赞助我们

如果此项目能够帮助到你,你可以赞助作者一些咖啡豆表示鼓励: Sponsor

许可证

本项目由 MIT 许可证的条款进行许可

Stargazers over time

MIT License Copyright (c) 2022 xiaowu Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

FastAPI 最佳架构是使用 FastAPI 构建的企业级后端架构解决方案 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/fastapi-practices/fastapi_best_architecture.git
git@gitee.com:fastapi-practices/fastapi_best_architecture.git
fastapi-practices
fastapi_best_architecture
fastapi_best_architecture
master

搜索帮助

371d5123 14472233 46e8bd33 14472233