Django-Vue3-Admin

项目简介

Django-Vue3-Admin 是一个基于 Django + Vue3 的前后端分离的后台管理系统,采用了最新的前后端技术栈,内置了丰富的功能模块,可以帮助开发者快速搭建企业级中后台产品。

技术架构

后端技术栈

  • 核心框架:Django 4.2.1
  • 权限认证:Django REST framework + JWT + Casbin
  • 数据库:MySQL 8.0+
  • 缓存:Redis
  • 任务队列:Celery
  • WebSocket:Channels + Redis
  • 跨域处理:django-cors-headers
  • 验证码:django-simple-captcha
  • 数据导出:django-import-export

前端技术栈

  • 核心框架:Vue 3.0 (Composition API)
  • 开发语言:TypeScript
  • 构建工具:Vite 3
  • UI 框架:Element Plus
  • 状态管理:Pinia
  • 路由管理:Vue Router
  • 国际化:vue-i18n

功能特点

1. 用户权限管理

  • 基于 Casbin 的 RBAC 权限模型
  • 多维度数据权限控制
  • 动态路由和菜单权限
  • 按钮级权限控制

2. 系统功能

  • 用户管理:用户信息管理、状态控制、多角色分配
  • 角色管理:角色权限分配、数据权限设置
  • 菜单管理:动态菜单配置,支持多级菜单
  • 部门管理:部门组织架构维护
  • 岗位管理:岗位信息维护

3. 系统监控

  • 操作日志:系统操作记录
  • 任务监控:定时任务执行监控
  • 服务监控:服务器性能监控

4. 系统工具

  • 数据字典:系统中各种枚举数据维护
  • 消息管理:系统消息推送和管理

部署说明

环境要求

  • Python 3.9+
  • Node.js 16+
  • MySQL 8.0+
  • Redis
  • Docker(可选)

部署步骤

1. Docker 部署(推荐)

# 启动所有服务
docker-compose up -d # 仅启动后端服务
docker-compose -f django-admin.yml up -d # 仅启动前端服务
docker-compose -f django-web.yml up -d

2. 常规部署

后端部署
cd backend
# 安装依赖
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ # 数据库迁移
python manage.py makemigrations
python manage.py migrate # 初始化数据
python manage.py init # 启动服务
python manage.py runserver 127.0.0.1:8000
前端部署
cd web
# 安装依赖
pnpm install # 开发环境
pnpm run dev # 生产环境
pnpm build

初始账号

  • 用户名:paopao
  • 密码:123456

开发指南

后端开发

  • 遵循 Django 开发规范
  • 使用 Django REST framework 开发 API
  • 使用 Casbin 进行权限控制
  • 使用 Celery 处理异步任务

前端开发

  • 组件命名采用 PascalCase
  • TypeScript 类型定义放在 types 目录
  • API 接口按模块组织在 api 目录
  • 使用 ESLint + Prettier 进行代码规范

演示图































许可证

此项目为开源项目,请勿商用,若要商用,请联系作者

代码地址

https://gitee.com/taskPyroer/django-vue3-admin

https://github.com/taskPyroer/DjangoVue3Admin

学习交流

微信:PJ221BBB 公众号:布鲁的Python之旅

开源!Django-Vue3-Admin的Python后台管理系统的更多相关文章

  1. DoNet开源项目-基于jQuery EasyUI的后台管理系统

    博主在业余时间开发了一个简单的后台管理系统,其中用到了 jQuery EasyUI 框架,上次分享过系统布局,参考文章:jQuery EasyUI 后台管理系统布局分享,目前已完成系统的整体框架的搭建 ...

  2. admin快速搭建后台管理系统

    一.基于admin后台管理系统的特点: 权限管理:权限管理是后台管理系统必不可少的部分,拥有权限管理,可以赋予用户增删改查表权限(可以分别赋予用户对不同的表有不同的操作权限): 前端样式少:后台管理主 ...

  3. django后台管理系统(admin)的简单使用

    目录 django后台管理系统的使用 检查配置文件 检查根urls.py文件 启动项目,浏览器输入ip端口/admin 如: 127.0.0.1/8000/admin 回车 注册后台管理系统超级管理 ...

  4. Django的后台管理系统Admin(5)

    Django的后台管理系统就是为了方便管理员管理网站,所以django自带了一个后台管理系统,接下来记录一下如何使用这个后台的管理系统. 首先我们要进入后台管理系统,就要有一个管理员的账号,先来创建有 ...

  5. Django后台管理系统的使用

    目录 django后台管理系统的使用 检查配置文件 检查根urls.py文件 启动项目,浏览器输入ip端口/admin 如: 127.0.0.1/8000/admin 回车 注册后台管理系统超级管理 ...

  6. Vue3教程:Vue 3 + Element Plus + Vite 2 的后台管理系统开源啦

    之前发布过一篇文章<Vue3教程:开发一个 Vue 3 + element-plus 的后台管理系统>,文中提到会开发并开源一个 Vue 3 + Element Plus 的项目供大家练手 ...

  7. 我的第一个python web开发框架(14)——后台管理系统登录功能

    接下来正式进入网站的功能开发.要完成后台管理系统登录功能,通过查看登录页面,我们可以了解到,我们需要编写验证码图片获取接口和登录处理接口,然后在登录页面的HTML上编写AJAX. 在进行接口开发之前, ...

  8. 4、Django实战第4天:xadmin快速搭建后台管理系统

    Django默认为我们提供了后台管理系统admin, urls.py中配置的第一条就是访问后台管理系统admin的 urlpatterns = [ url(r'^admin/', admin.site ...

  9. 【tips】xadmin - django第三方后台管理系统

    Django 为大家提供了一个完善的后台管理系统—admin,但是这个后台管理系统总体来说不太适合国人的习惯,所以有大神就使用 bootstrap 和 jQuery,为我们开发了一个第三 方的 Dja ...

  10. 可插拔式后台管理系统(Django)

    1.实现效果 研究了下django admin的功能,自己实现了一个简单的可插拔式后台管理系统,方便自定义特殊的功能,而且作为一个独立单独的django app,可以整体拷贝到其他项目中作为后台数据管 ...

随机推荐

  1. 陌陌技术分享:陌陌IM在后端KV缓存架构上的技术实践

    本文由冀浩东分享,原题"单核QPS近6000S,陌陌基于OceanBase的持久化缓存探索与实践",为了阅读便利,本文进行了排版和内容优化等. 1.引言 挚文集团于 2011 年 ...

  2. 2025-01-04:不包含相邻元素的子序列的最大和。用go语言,给定一个整数数组 nums 和一个由二维数组 queries 组成的查询列表,其中每个查询的格式为 queries[i] = [pos

    2025-01-04:不包含相邻元素的子序列的最大和.用go语言,给定一个整数数组 nums 和一个由二维数组 queries 组成的查询列表,其中每个查询的格式为 queries[i] = [pos ...

  3. DateTimeExtensions:一个轻量C#的开源DateTime扩展方法库

    推荐一个专门为System.DateTime编写的扩展方法库. 01 项目简介 该项目主要是为System.DateTime和System.DateTimeOffset的编写的扩展方法,包括自然日期差 ...

  4. runoob-scala

    https://www.runoob.com/scala/scala-tutorial.html Scala 简介 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成 ...

  5. javascript对象学习笔记

    目前所见的,在普通的JavaScript应用中和绝大多数人一样使用的是全局的方式.大概是因为JavaScript所定义的变量或函数默认就是全局的.为了是代码不至于太凌乱,变量不至于稀里糊涂的就被人重定 ...

  6. Ubuntu更改用户名

    网上给出Ubuntu更改用户名步骤: 1.进入Ubuntu,打开一个终端,输入 sudo su转为root用户. 注意,必须先转为root用户!!! 2.gedit /etc/passwd ,找到代表 ...

  7. 平滑升级mariadb

    问题 Centos7自带的MariaDB版本是5.5 ,版本过于老旧,现想升级到最新版本,且数据不丢失 措施 备份原来的数据 mysqldump -u root -p --all-databases ...

  8. Flink同步kafka到iceberg数据延迟,两个checkpoint后才可查询

    一.问题描述 用户配置了高级参数很多,观察kafka增量数据不多,flink负载不高情况下两个checkpoint后才可查询到数据.   排查时hdfs有数据文件产生,但是mainfast文件中最新快 ...

  9. Vulnhub-kioptix2014靶机getshell及提权

    靶机搭建 点击扫描虚拟机 然后扫描文件夹即可 信息收集 扫描ip nmap扫描得到目标靶机ip nmap -sn 192.168.108.0/24 故 攻击机:192.168.108.130 目标靶机 ...

  10. Typecho 如何开启外链转内链

    把博客中的外部链接转换为网站内链,据说有利于搜索引擎收录.该插件主要由 benzBrake 大佬 编写,同时支持转换文章和评论中的链接. 上传插件 下载 Master Branch Code 后上传到 ...