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. Wasm在即时通讯IM场景下的Web端应用性能提升初探

    本文由得物技术WWQ分享,原题"基于IM场景下的Wasm初探:提升Web应用性能",下文进行了排版和内容优化. 1.什么是Wasm Wasm,全称 WebAssembly,官网描述 ...

  2. Verilog3_组合逻辑电路

    组合逻辑电路设计方法 使用assign语句: 描述简单的组合逻辑电路 使用always块: 描述复杂的组合逻辑电路 要点: 只在一个always模块中对某一变量进行赋值: 将所有敏感变量列在敏感变量列 ...

  3. Python_图片对比问题汇总

    问题一. raise OSError(f"cannot write mode {im.mode} as JPEG") from eOSError: cannot write mod ...

  4. 如何快速在本地运行你vue打包的的dist文件

    要在本机启动运行前端提供的dist包,需要先安装一个HTTP服务器,例如Apache,Nginx,phpstudy.这里以使用Node.js的http-server为例进行说明 首先,确保已经安装了N ...

  5. 6种@Transactional注解的失效场景

    一.事务 事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种. 编程式事务:是指在代码中手动的管理事务的提交.回滚等操作,代码侵入性比较强, ...

  6. 项目PMP之十二项目采购管理

    项目PMP之十二--项目采购管理   一.定义:存在法律义务,需要对采购过程了解,非法律专家,合同约束 项目经理无权签署对组织有约束力的法律文件 采购模式: 分散式采购:无采购管理部门,项目经理有采购 ...

  7. python的typing模块

    python的typing模块 参考:3个提高 Python 开发效率的小工具.Python3 Typing模块详解 typeing模块在python中提供类型支持,主要功能有: 类型检查,防止运行时 ...

  8. uni-app路由跳转

    navigateTo redirectTo (1)保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面 (如果A->B来回频繁切换,不要A B两个方法都使用 ...

  9. 使用yarn安装依赖包出现“There appears to be trouble with your network connection. Retrying...”超时的提醒

    我们在使用yarn安装依赖包文件的时候,可能会出现"There appears to be trouble with your network connection. Retrying... ...

  10. vue-element-admin改为从后台获取菜单

    一.修改文件\src\router\index.js 文件的asyncRoutes清理为 export const asyncRoutes = [ { path: '*', redirect: '/4 ...