Files
DjangoAdmin_Django_NaiveVue/CLAUDE.md
T
2026-09-16 13:30:07 +08:00

2.3 KiB
Raw Blame History

DjangoAdmin 数据中台 (Django + NaiveUI)

项目概览

企业级数据中台解决方案。后端 Django 6 + DRF,前端 Vue3 + TypeScript + NaiveUI + Vite。

目录结构

application/     # Django 应用(每个子目录一个业务模块)
  login/         # 登录认证(JWT)
  user/          # 用户管理
  role/          # 角色管理
  menu/          # 菜单管理(动态路由)
  dept/          # 部门管理
  dict/          # 字典管理
  generator/     # 代码生成器
  ...
config/          # Django 配置(settings, urls 等)
middleware/      # 登录 & 权限中间件
utils/           # 通用工具(响应封装 R.py、JWT、加密等)
extends/         # 扩展(dotenv 加载)
constant/        # 全局常量
ui/              # 前端 Vue3 项目
docker/          # Docker 部署
scripts/         # 数据库迁移脚本
generator.py     # 代码生成器主逻辑
generator_config.py  # 生成器配置(字段模板)
config.json      # 代码生成器的模型定义

技术栈

  • 后端: Python 3.12+, Django 6.0, DRF 3.18, SimpleJWT, MySQL/PostgreSQL/SQLServer/Oracle
  • 前端: Vue 3, TypeScript, NaiveUI, Vite, Pinia, Vue Router, TailwindCSS
  • 包管理: 后端 pip (requirements.txt), 前端 pnpm

开发约定

后端

  • 每个业务模块是 application/ 下的一个独立 Django app
  • 响应封装使用 utils/R.py,统一返回 {code, msg, data} 格式
  • 认证方案: JWT (SimpleJWT)
  • 权限模型: RBAC(菜单权限 + 按钮权限 + 数据权限)
  • 中间件链: login_middleware → permission_middleware
  • 配置从 .env 加载(python-dotenv)

前端

  • 前端项目在 ui/ 目录,独立运行
  • 使用 pnpm 作为包管理器
  • ESLint + Prettier + Stylelint 代码规范
  • 组件在 ui/src/ 下

代码生成器

  • config.json 定义模型字段
  • generator.py 根据配置自动生成前后端 CRUD 代码
  • 表前缀自动去除(如 django_ 前缀)

常用命令

# 后端
python manage.py runserver
python manage.py makemigrations
python manage.py migrate

# 前端
cd ui && pnpm install && pnpm dev

# Docker
cd docker && docker-compose up -d

注意事项

  • .env 包含敏感配置,不要提交到 git
  • config.json 是代码生成器的输入,修改前确认字段定义
  • 前后端分离部署,后端 API 统一前缀