跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonSaaS大前端

ZQ-Platform:基于 Python FastAPI 与 Django 的开源企业级后台系统

ZQ-Platform 是一个现代化的完全开源免费的企业级后台管理系统,采用前后端分离架构。提供 Django 5.2 + Django Ninja 或 FastAPI + SQLAlchemy 异步 ORM 两种后端选择,前端基于 Vue 3 + Vben Admin + Element Plus 构建。核心特性包括完整的 RBAC 权限系统、JWT 认证机制、系统监控、文件管理、操作日志、数据字典及任务调度等。支持多数据库(MySQL、PostgreSQL 等)及 WebSocket 实时通信。项目采用 Monorepo 架构,适合快速搭建企业级应用。

小熊软糖发布于 2026/4/6更新于 2026/5/2136 浏览

ZQ-Platform(芷青开发平台)

一个现代化的完全开源免费的企业级后台管理系统,提供 Django 和 FastAPI 双后端选择 + Vue3 + Element Plus 构建。

演示链接(支持 Django 和 FastAPI)

https://django-ninja.zq-platform.cn/

开源地址

https://github.com/jiangzhikj/zq-platform.git

📖 项目简介

zq-platform 是一个功能完善的企业级后台管理系统解决方案,采用前后端分离架构。提供两种后端选择:Django 5.2 + Django Ninja 或 FastAPI + SQLAlchemy 异步 ORM,前端基于 Vue 3 + Vben Admin + Element Plus 打造现代化的管理界面。

✨ 核心特性
  • 🎯 完整的 RBAC 权限系统 - 用户、角色、权限、部门、岗位多维度权限控制
  • 🔐 JWT 认证机制 - 安全的 Token 认证,支持 Access Token 和 Refresh Token
  • 📊 系统监控 - 服务器监控、Redis 监控、数据库监控,实时掌握系统状态
  • 📁 文件管理 - 完善的文件上传、下载、预览功能
  • 📝 操作日志 - 详细的登录日志和操作审计
  • 🗂️ 数据字典 - 灵活的字典管理,支持多级分类
  • ⏰ 任务调度 - 基于 APScheduler 的定时任务管理
  • 🔌 WebSocket 支持 - 实时通信能力
  • 🌐 多数据库支持 - MySQL、PostgreSQL、SQL Server、SQLite
  • 🎨 现代化 UI - 响应式设计,支持暗黑模式
  • 📦 Monorepo 架构 - 基于 pnpm workspace 的前端工程化方案

🏗️ 技术栈

后端技术

Django 后端 (backend-django)

  • 核心框架: Django 5.2.7
  • API 框架: Django Ninja 1.4.5 (高性能 API 框架)
  • 认证: PyJWT 2.8.0
  • 异步任务: Celery 5.4.0 + Django Celery Beat
  • 任务调度: APScheduler 3.10.4
  • 缓存: Redis + django-redis
  • WebSocket: Django Channels 4.2
  • 数据库驱动: psycopg2-binary, pymysql, pyodbc
  • 服务器: Uvicorn 0.38.0 / Gunicorn 23.0.0
  • 其他: openpyxl, geoip2, psutil, cryptography

FastAPI 后端 (backend-fastapi)

  • 核心框架: FastAPI 0.115+
  • ORM: SQLAlchemy 2.0+ (异步)
  • 数据库: PostgreSQL 16+
  • 迁移: Alembic
  • 认证: JWT
  • 缓存: Redis
  • Python: 3.12+
  • 前端技术
    • 核心框架: Vue 3.x
    • 构建工具: Vite 5.x
    • UI 组件库: Element Plus
    • 状态管理: Pinia
    • 路由: Vue Router
    • HTTP 客户端: Axios
    • 工具库: VueUse, dayjs, lodash-es
    • 代码规范: ESLint, Prettier, Stylelint
    • 包管理: pnpm 10.14.0
    • Monorepo: Turbo

    📁 项目结构

    zq-platform/
    ├── backend-django/          # Django 后端
    │   ├── application/         # 项目配置
    │   ├── core/                # 核心业务模块
    │   │   ├── auth/            # 认证授权
    │   │   ├── user/            # 用户管理
    │   │   ├── role/            # 角色管理
    │   │   ├── permission/      # 权限管理
    │   │   ├── dept/            # 部门管理
    │   │   ├── post/            # 岗位管理
    │   │   ├── menu/            # 菜单管理
    │   │   ├── dict/            # 字典管理
    │   │   ├── login_log/       # 登录日志
    │   │   ├── file_manager/    # 文件管理
    │   │   ├── server_monitor/  # 服务器监控
    │   │   ├── redis_monitor/   # Redis 监控
    │   │   ├── redis_manager/   # Redis 管理
    │   │   ├── database_monitor/# 数据库监控
    │   │   └── database_manager/# 数据库管理
    │   ├── scheduler/           # 任务调度模块
    │   ├── common/              # 公共模块
    │   ├── env/                 # 环境配置
    │   ├── requirements.txt     # Python 依赖
    │   └── manage.py            # Django 管理脚本
    ├── backend-fastapi/         # FastAPI 后端(可选)
    │   ├── app/                 # 核心应用模块
    │   ├── core/                # 核心业务模块
    │   ├── scheduler/           # 定时任务模块
    │   ├── scripts/             # 工具脚本
    │   ├── alembic/             # 数据库迁移
    │   ├── env/                 # 环境配置
    │   ├── requirements.txt     # Python 依赖
    │   └── main.py              # 应用入口
    └── web/                     # Vue 前端 (Monorepo)
        ├── apps/
        │   └── web-ele/         # Element Plus 版本主应用
        │       ├── src/
        │       │   ├── api/     # API 接口
        │       │   ├── views/   # 页面组件
        │       │   ├── router/  # 路由配置
        │       │   └── store/   # 状态管理
        │       └── package.json
        ├── packages/            # 共享包
        │   ├── @core/           # 核心包
        │   ├── effects/         # 副作用包
        │   ├── hooks/           # Hooks
        │   ├── icons/           # 图标
        │   ├── locales/         # 国际化
        │   ├── stores/          # 状态管理
        │   └── utils/           # 工具函数
        ├── internal/            # 内部工具
        └── package.json         # 根配置
    

    🚀 快速开始

    环境要求
    • 后端
      • Python >= 3.10
      • MySQL >= 5.7 / PostgreSQL >= 12 / SQL Server / SQLite
      • Redis >= 5.0
    • 前端
      • Node.js >= 20.10.0
      • pnpm >= 9.12.0
    后端安装
    选项 1: Django 后端(推荐用于生产环境)
    1. 克隆项目
    git clone https://github.com/jiangzhikj/zq-platform.git
    cd zq-platform/backend-django
    
    1. 创建虚拟环境
    python -m venv venv
    source venv/bin/activate  # Linux/Mac
    # 或 venv\Scripts\activate  # Windows
    
    1. 安装依赖
    pip install -r requirements.txt
    
    1. 配置环境变量
    cp env/.env.example .env
    

    编辑 .env 文件,配置数据库、Redis、JWT 密钥等。

    主要配置项:

    # JWT 密钥
    JWT_ACCESS_SECRET_KEY=your-jwt-access-secret
    JWT_REFRESH_SECRET_KEY=your-jwt-refresh-secret
    
    # 数据库配置
    DATABASE_TYPE=MYSQL # MYSQL/POSTGRESQL/SQLSERVER/SQLITE3
    DATABASE_HOST=127.0.0.1
    DATABASE_PORT=3306
    DATABASE_USER=root
    DATABASE_PASSWORD=password
    DATABASE_NAME=zq_admin
    
    # Redis 配置
    REDIS_HOST=127.0.0.1
    REDIS_PORT=6379
    REDIS_PASSWORD=
    REDIS_DB=2
    
    1. 数据库迁移
    python manage.py makemigrations core scheduler
    python manage.py migrate
    
    1. 初始化数据
    python manage.py loaddata db_init.json
    
    1. 启动服务
    # 开发环境
    python manage.py runserver 0.0.0.0:8000
    
    1. 启动任务调度器(可选)
    # 生产环境
    python start_scheduler.py
    
    选项 2: FastAPI 后端(推荐用于高性能场景)
    1. 进入 FastAPI 目录
    cd zq-platform/backend-fastapi
    
    1. 创建虚拟环境
    conda create -n zq-fastapi python=3.12
    conda activate zq-fastapi
    
    1. 安装依赖
    pip install -r requirements.txt
    
    1. 配置环境变量
    cp env/example.env env/dev.env
    

    编辑 env/dev.env 配置数据库连接。

    1. 数据库迁移
    alembic revision --autogenerate -m "init tables"
    alembic upgrade head
    # 导入初始数据(可选)
    python scripts/loaddata.py db_init.json
    
    1. 启动服务
    python main.py
    # 或 uvicorn main:app --reload --host 0.0.0.0 --port 8000
    
    1. 访问 API 文档
    • Swagger UI: http://localhost:8000/docs
    • ReDoc: http://localhost:8000/redoc
    前端安装
    1. 进入前端目录
    cd zq-platform/web
    
    1. 安装依赖
    pnpm install
    
    1. 配置环境变量
    cd apps/web-ele
    cp .env.development .env
    

    编辑 .env 文件,配置后端 API 地址。

    1. 启动开发服务器
    # 在 web 根目录下
    pnpm dev
    
    1. 构建生产版本
    pnpm build:ele
    

    📝 默认账号

    初始化数据后,可使用以下账号登录:

    • 账号:superadmin
    • 密码:123456

    🔧 主要功能模块

    系统管理
    • 用户管理: 用户的增删改查、密码重置、状态管理
    • 角色管理: 角色权限分配、数据权限控制
    • 权限管理: 接口权限、按钮权限细粒度控制
    • 部门管理: 树形部门结构管理
    • 岗位管理: 岗位信息维护
    • 菜单管理: 动态菜单配置、路由管理
    • 字典管理: 系统字典维护
    系统监控
    • 服务器监控: CPU、内存、磁盘、网络实时监控
    • Redis 监控: Redis 性能指标、键值管理
    • 数据库监控: 数据库连接、性能监控
    • 登录日志: 用户登录记录、IP 地理位置
    任务调度
    • 定时任务: Cron 表达式配置
    • 任务日志: 执行历史、结果查看
    • 任务管理: 启动、停止、立即执行
    文件管理
    • 文件上传: 支持多文件上传
    • 文件预览: 图片、文档在线预览
    • 文件下载: 批量下载功能

    🔐 API 文档

    Django 后端

    • Swagger UI: http://localhost:8000/api/docs
    • ReDoc: http://localhost:8000/api/redoc

    FastAPI 后端

    • Swagger UI: http://localhost:8000/docs
    • ReDoc: http://localhost:8000/redoc

    🛠️ 开发指南

    后端开发
    1. 添加新模块
      • 在 core/ 或创建新 app
      • 定义 models、schemas、services、api
      • 在 router 中注册路由
    2. API 开发规范
      • 使用 Django Ninja 装饰器
      • 统一返回格式
      • 异常处理
      • 权限验证
    前端开发
    1. 添加新页面
      • 在 src/views/ 创建页面组件
      • 在 src/router/routes/modules/ 添加路由
      • 在 src/api/ 添加接口定义
    2. 组件开发规范
      • 使用 Element Plus 组件
      • 优先使用 Tailwind CSS
      • 支持暗黑模式
      • 图标从 @vben/icons 导入

    📦 部署

    1. 后端部署
      • 使用 Gunicorn + Nginx
      • 配置 Supervisor 进程守护
      • 配置 SSL 证书
    2. 前端部署
      • 执行 pnpm build 构建
      • 将 dist 目录部署到 Nginx
      • 配置反向代理

    🤝 贡献指南

    1. Fork 本项目
    2. 创建特性分支 (git checkout -b feature/AmazingFeature)
    3. 提交更改 (git commit -m 'Add some AmazingFeature')
    4. 推送到分支 (git push origin feature/AmazingFeature)
    5. 开启 Pull Request

    🙏 致谢

    • Django - 强大的 Python Web 框架
    • Django Ninja - 快速的 Django REST 框架
    • Vue Vben Admin - 优秀的 Vue3 后台管理模板
    • Element Plus - 基于 Vue 3 的组件库

    目录

    1. ZQ-Platform(芷青开发平台)
    2. 演示链接(支持 Django 和 FastAPI)
    3. 开源地址
    4. 📖 项目简介
    5. ✨ 核心特性
    6. 🏗️ 技术栈
    7. 后端技术
    8. 前端技术
    9. 📁 项目结构
    10. 🚀 快速开始
    11. 环境要求
    12. 后端安装
    13. 选项 1: Django 后端(推荐用于生产环境)
    14. 或 venv\Scripts\activate # Windows
    15. JWT 密钥
    16. 数据库配置
    17. Redis 配置
    18. 开发环境
    19. 生产环境
    20. 选项 2: FastAPI 后端(推荐用于高性能场景)
    21. 导入初始数据(可选)
    22. 或 uvicorn main:app --reload --host 0.0.0.0 --port 8000
    23. 前端安装
    24. 在 web 根目录下
    25. 📝 默认账号
    26. 🔧 主要功能模块
    27. 系统管理
    28. 系统监控
    29. 任务调度
    30. 文件管理
    31. 🔐 API 文档
    32. 🛠️ 开发指南
    33. 后端开发
    34. 前端开发
    35. 📦 部署
    36. 🤝 贡献指南
    37. 🙏 致谢
    • 💰 8折买阿里云服务器限时8折了解详情
    • Magick API 一键接入全球大模型注册送1000万token查看
    • 🤖 一键搭建Deepseek满血版了解详情
    • 一键打造专属AI 智能体了解详情
    极客日志微信公众号二维码

    微信扫一扫,关注极客日志

    微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

    更多推荐文章

    查看全部
    • AI Agent 架构:基础组成模块深度解析
    • 图的寻路算法详解:基于深度优先搜索 (DFS) 的实现
    • 模拟算法基础:核心概念与典型案例分析
    • 模拟算法实战:核心概念与经典案例解析
    • 2025 年 3 月 CCF-GESP C++ 三级真题解析
    • AI Agent 架构:基础组成模块深度解析
  • 基于 Python Reflex 搭建 ZeroClaw 本地 AI 管理面板
  • AI 核心概念解析:AIGC、RAG、Agent 与 MCP
  • Git 在 Windows 环境下的安装与使用教程
  • 大型 C++ 项目代码依赖管理方案
  • Java 包装类与泛型应用详解
  • 基于 HTML5+CSS3+JavaScript 实现高木同学圣诞树 GalGame
  • Ant Design Form 表单组件实现原理
  • C++ STL list 容器详解:使用与模拟实现
  • Python 使用 Selenium 实现网页自动化操作指南
  • C++ 智能指针详解:原理、实现与使用场景
  • 用 OpenClaw 在 QQ 群部署 24 小时 AI 助教
  • 大规模语言模型:从理论到实践的模型训练
  • 快速排序非递归实现详解
  • NWPU VHR-10 遥感目标检测数据集实战指南
  • 相关免费在线工具

    • curl 转代码

      解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

    • HTML转Markdown

      将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

    • JSON 压缩

      通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online