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

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

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

参考资源

相关推荐
uhakadotcom3 分钟前
Kubernetes Ingress NGINX Controller 详解
后端·面试·github
uhakadotcom6 分钟前
代码混淆:保护软件安全的利器
后端·面试·github
小宁爱Python6 分钟前
Python从入门到精通2:SQLite数据库(FastAPI + SQLite全流程开发指南)
数据库·python·sqlite·fastapi
aiopencode7 分钟前
android crash_log 文件分析
后端
失业写写八股文9 分钟前
如何选择栈与堆?堆跟栈的区别
java·后端
xinxiyinhe9 分钟前
Python在图像处理领域的第三方库支持(三)
开发语言·图像处理·python
李昊哲小课11 分钟前
垃圾短信分类
人工智能·python·机器学习·自然语言处理·分类·数据挖掘·中文分词
长安海11 分钟前
SPPAS安装及问题汇总
python·sppas
星星电灯猴12 分钟前
Flutter布局入门:新手必看教程
后端
bcbnb17 分钟前
Flutter语法资料:新手入门教程
后端