乐于分享
好东西不私藏

FastAPI Web Admin开源模板:高效构建管理后台的利器

FastAPI Web Admin开源模板:高效构建管理后台的利器
手执烟火以谋生,心怀诗意以谋爱

# 核心功能

采用异步高性能架构,支持高并发请求处理

内置完整 RBAC 权限体系,实现用户、角色、菜单、权限统一管控

支持动态路由注册,后端配置后前端自动生成菜单与路由

提供多层级权限控制,覆盖菜单、按钮、数据、API 四个维度

具备完善日志管理,记录用户登录与操作行为并支持查询清理

支持亮色与暗黑主题切换,界面美观易用

支持 Docker 一键部署,简化环境配置与上线流程

采用分层架构设计,代码结构清晰,易于维护与扩展

集成 Celery 异步任务与定时任务调度系统

提供 Alembic 数据库迁移,支持一键初始化数据库

前端采用 TypeScript 增强类型安全,配合 Pinia 状态管理

支持路由懒加载、动态面包屑、表格批量操作与详情弹窗

提供按钮级权限指令、接口权限校验、数据范围过滤

支持多环境配置、统一异常处理、请求限流与 JWT 认证

# 截图

# 技术栈

后端基于 Python、FastAPI、SQLAlchemy 2.0、Pydantic、Redis、MySQL

前端基于 Vue3、Vite、TypeScript、Element Plus、Pinia、Vue Router

支持 Windows、Linux、macOS 多平台运行

# 后端部署

1. 环境准备

# 确保已安装 Python 3.13、MySQL 8.0、Redis 6.0python --versionmysql --versionredis-server --version

2. 创建数据库

CREATE DATABASE fastapiwebadmin CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3. 配置环境

cd backend# 复制配置文件cp .env.example .env# 编辑 .env 文件,修改数据库连接信息# MYSQL_DATABASE_URI=mysql+asyncmy://用户名:密码@localhost:3306/fastapiwebadmin# REDIS_URI=redis://localhost:6379/4

4. 安装依赖

# 使用国内镜像源加速pip install -r requirements -i https://mirrors.aliyun.com/pypi/simple

5. 初始化数据库

# 一键初始化(推荐)python cli.py init-db# 初始化权限数据python init_permissions_simple.py# 或手动使用 Alembicalembic upgrade headpython cli.py init-data

6. 启动后端服务

# 开发模式python main.py# 生产模式gunicorn main:app -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8100

7. 启动 Celery(可选)

# Windows 启动 Worker(单线程)celery -A celery_worker.worker.celery worker --pool=solo -l INFO# Linux 启动 Worker(多线程)celery -A celery_worker.worker.celery worker --loglevel=INFO -c 10 -P solo -n fastapiwebadmin-celery-worker# 启动定时任务调度器celery -A celery_worker.worker.celery beat -S celery_worker.scheduler.schedulers:DatabaseScheduler -l INFO# 启动心跳监控celery -A celery_worker.worker.celery beat -l INFO

# 前端部署

1. 环境准备

# 确保已安装 Node.js 18.15.0node -v  # v18.15.0

2. 安装依赖管理工具

# 安装 cnpm(使用淘宝镜像)npm install -g cnpm --registry=https://registry.npm.taobao.org# 或安装 yarnnpm install -g yarn

3. 安装项目依赖

cd frontend# 使用 cnpmcnpm install# 或使用 yarnyarn install

4. 启动开发服务器

# 使用 cnpmcnpm run dev# 或使用 yarnyarn dev

访问:http://localhost:5173

5. 生产构建
# 使用 cnpmcnpm run build# 或使用 yarnyarn build# 构建产物在 dist/ 目录

# 源码和dock部署

https://github.com/rebort-hub/fastapiwebadmin2.0/tree/main

相关学习资料