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

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

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

参考资源

相关推荐
RanMatrix1 分钟前
python-logging模块
python
e***74959 分钟前
Redis——使用 python 操作 redis 之从 hmse 迁移到 hset
数据库·redis·python
Ace_317508877615 分钟前
京东商品详情接口终极突破:从多接口联动解析到数据全息重构
python·重构
汗流浃背了吧,老弟!24 分钟前
Langchian检索YouTube视频字幕
python·音视频
IUGEI26 分钟前
Websocket、HTTP/2、HTTP/3原理解析
java·网络·后端·websocket·网络协议·http·https
iOS开发上架哦27 分钟前
iOS App HTTPS 抓包实战:从 TLS 分析到多工具协同的完整解决方案
后端
励志前端小黑哥35 分钟前
uv包管理器--python也有自己的pnpm了
开发语言·python·uv
2501_9411120741 分钟前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
2501_9411120543 分钟前
Python Lambda(匿名函数):简洁之道
jvm·数据库·python
申阳1 小时前
Day 12:09. 基于Nuxt开发博客项目-使用NuxtContent构建博客模块
前端·后端·程序员