Django
项目介绍
youlai-django 是 vue3-element-admin 的 Python 后端实现,基于 Django + DRF,采用 RBAC 权限模型,集成 JWT / Redis,用于企业级前后端分离权限管理系统。
一句话定位:如果你需要一个"开箱即用"的 Python/Django 权限中后台后端(认证、鉴权、数据权限、代码生成等能力齐全),选它。
核心能力
- RBAC 权限模型(用户/角色/菜单/按钮权限)
- 登录认证与会话管理(JWT / Redis Token 二选一)
- 接口鉴权(权限点校验 + 前后端联动)
- 数据权限(基于装饰器 + QuerySet 的数据范围过滤)
- 代码生成(从表结构生成 CRUD 骨架并打包下载)
- 文件上传(本地 / MinIO / OSS 可选)
- 定时任务(可选,XXL-Job)
- 实时通信(SSE)
技术栈
以仓库配置为准(requirements.txt / config/settings/):
| 分类 | 技术选型 | 说明 |
|---|---|---|
| 运行时 | Python 3.12 ~ 3.14 | 以 pyproject.toml 为准 |
| Web 框架 | Django 6.0 | 版本以 requirements.txt 为准 |
| API 框架 | DRF 3.16 | Django REST Framework |
| 数据库 | MySQL 5.7 ~ 8.x | 推荐 8.x |
| 缓存 | Redis 7.x | 推荐 7.x |
| 认证 | SimpleJWT | djangorestframework_simplejwt |
| 接口文档 | drf-spectacular | Swagger / ReDoc |
| 实时通信 | SSE | 基于 StreamingHttpResponse |
目录结构
核心目录一览(详细结构见 快速开始):
text
youlai-django/
apps/ # 业务模块
auth/ # 认证模块
system/ # 系统模块(用户/角色/菜单/部门/字典/通知/日志)
codegen/ # 代码生成模块
file/ # 文件上传模块
message/ # SSE 实时通信
utils/ # 跨应用工具集
config/ # 项目配置(urls / settings / asgi / wsgi)
core/ # 公共基础能力(异常、权限、分页、中间件等)
sql/mysql/ # 初始化脚本
manage.py # Django 入口
requirements.txt # 依赖清单
docker-compose.yml # Docker 编排必需服务
- MySQL
- Redis
