Django-Vue3-Admin - 现代化的前后端分离权限管理系统

项目介绍

Django-Vue3-Admin是一个基于RBAC(Role-Based Access Control)模型的综合性基础开发平台,专注于权限控制,支持列级别的细粒度权限管理。该项目采用前后端分离架构,技术栈包括:

后端:

  • Django + Django REST Framework
  • SimpleJWT认证
  • 支持多端认证系统

前端:

  • Vue 3
  • Composition API
  • TypeScript
  • Vite
  • Element Plus

核心功能

  1. 菜单管理
  • 配置系统菜单
  • 操作权限管理
  • 按钮权限标识
  • 后端接口权限
  1. 部门管理
  • 配置组织架构(公司、部门、角色)
  • 灵活的部门层级管理
  1. 角色管理
  • 角色菜单权限分配
  • 数据权限分配
  • 基于部门的数据范围权限
  1. 权限控制
  • 按钮级权限控制
  • 接口权限控制
  • 数据范围授权
  • 字段列权限控制
  1. 系统功能
  • 用户管理
  • 白名单配置
  • 字典管理
  • 区域管理
  • 文件管理
  • 操作日志

项目结构

项目采用清晰的目录结构:

复制代码
├── web/                    # 前端项目
├── backend/                # 后端项目
├── docker_env/             # docker配置
├── docker-compose.yml      # docker-compose配置
└── README.md              # 项目文档

前端结构

复制代码
├── src/
│   ├── api/               # API接口
│   ├── components/        # 公共组件
│   ├── layout/           # 布局组件
│   ├── router/           # 路由配置
│   ├── store/            # 状态管理
│   └── views/            # 页面文件

后端结构

复制代码
├── application/           # Django主应用
├── dvadmin/              # 系统功能模块
├── plugins/              # 插件目录
└── conf/                # 配置文件

安装部署

环境要求

  • Python >= 3.11.0 (最低3.9+)
  • Node.js >= 16.0
  • MySQL >= 8.0 (可选)
  • Redis (可选)

前端安装

bash 复制代码
# 克隆代码
git clone https://gitee.com/huge-dream/django-vue3-admin.git

# 进入前端目录
cd web

# 安装依赖
yarn install

# 启动服务
yarn run dev

后端安装

  1. 进入后端目录
bash 复制代码
cd backend
  1. 配置环境
  • 复制 conf/env.example.py 为 conf/env.py
  • 配置数据库信息
  1. 安装依赖
bash 复制代码
pip install -r requirements.txt
  1. 数据库迁移
bash 复制代码
python manage.py makemigrations
python manage.py migrate
  1. 初始化数据
bash 复制代码
python manage.py init
python manage.py init_area
  1. 启动服务
bash 复制代码
python manage.py runserver 0.0.0.0:8000

在线体验

特色优势

  1. 完善的RBAC权限模型
  2. 细粒度的权限控制
  3. 清晰的项目结构
  4. 完整的开发文档
  5. 活跃的社区支持

总结

Django-Vue3-Admin是一个功能完善的现代化权限管理系统,适合作为中大型项目的基础框架。它的主要优势在于:

  • 采用主流的技术栈
  • 完善的权限控制体系
  • 清晰的项目结构
  • 丰富的基础功能
  • 详细的开发文档

无论是用于实际项目开发,还是学习前后端分离架构,都是一个很好的选择。

参考资源

相关推荐
老歌老听老掉牙32 分钟前
Matplotlib Pyplot 数据可视化完全指南
python·信息可视化·matplotlib
IT_陈寒35 分钟前
React性能优化:这5个Hooks技巧让我减少了40%的重新渲染
前端·人工智能·后端
Sunhen_Qiletian35 分钟前
《Python开发之语言基础》第六集:操作文件
前端·数据库·python
Python编程学习圈40 分钟前
Python真的要一统天下了?
python
L***d6701 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端
本妖精不是妖精1 小时前
基于 Rokid Max 与 JSAR 构建空间锚定型 AR 信息面板
后端·ar·restful
芳草萋萋鹦鹉洲哦1 小时前
【tauri+rust】App会加载白屏,有时显示在左上角显示一小块,如何优化
开发语言·后端·rust
aiopencode1 小时前
网络调试工具推荐,Fiddler抓包教程、HTTPS配置与接口调试完整指南
后端
Hacker_Oldv1 小时前
Python技能进阶:探索Selenium库,实现网页自动化测试与爬虫
自动化测试·软件测试·爬虫·python·selenium·职场和发展
q***38511 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端