176 lines
4.7 KiB
Markdown
176 lines
4.7 KiB
Markdown
# Django-Vue-Admin 管理系统
|
||
|
||
## 📖 项目简介
|
||
本项目是一个全栈管理系统解决方案,包含:
|
||
1. **管理后台**:基于 **Django** + **Vue.js** 的前后端分离管理系统。包含用户管理、权限管理 (RBAC)、CRM 客户关系管理以及工作流 (Workflow) 等功能模块。
|
||
2. **微信小程序**:基于原生微信小程序开发,提供移动端服务。
|
||
|
||
## 🛠 技术栈
|
||
|
||
### 后端 (Backend) - `admin/server`
|
||
- **核心框架**: Django 3.2.23
|
||
- **API 框架**: Django REST Framework (DRF) 3.12.4
|
||
- **异步任务**: Celery 5.2.7
|
||
- **缓存/消息队列**: Redis
|
||
- **认证**: SimpleJWT
|
||
- **文档**: drf-yasg (Swagger/Redoc)
|
||
|
||
### 后端管理前端 (Web Client) - `admin/client`
|
||
- **核心框架**: Vue.js 2.6.10
|
||
- **UI 组件库**: Element UI 2.15.14
|
||
- **状态管理**: Vuex
|
||
- **路由管理**: Vue Router
|
||
- **脚手架**: Vue CLI
|
||
|
||
### 微信小程序 (Mini Program) - `wechat-mini-program`
|
||
- **开发框架**: 微信原生小程序 (Native)
|
||
- **UI 样式**: WXSS (支持 PostCSS)
|
||
- **配置文件**: `project.config.json`
|
||
|
||
## 📂 目录结构
|
||
|
||
```
|
||
gemini测试/
|
||
├── admin/ # 管理后台项目
|
||
│ ├── client/ # 管理后台前端源码 (Vue)
|
||
│ │ ├── src/ # 源代码
|
||
│ │ ├── package.json # 依赖配置
|
||
│ │ └── ...
|
||
│ └── server/ # 后端服务源码 (Django)
|
||
│ ├── apps/ # 业务应用模块 (crm, system, wf)
|
||
│ ├── server/ # 项目核心配置
|
||
│ ├── manage.py # Django 管理脚本
|
||
│ └── ...
|
||
├── wechat-mini-program/ # 微信小程序源码
|
||
│ ├── pages/ # 小程序页面 (index, detail, etc.)
|
||
│ ├── utils/ # 工具函数
|
||
│ ├── app.json # 全局配置
|
||
│ └── project.config.json # 项目配置
|
||
└── README.md # 项目说明文档
|
||
```
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 1. 环境准备
|
||
确保您的开发环境已安装以下软件:
|
||
- Python 3.8+
|
||
- Node.js 12+
|
||
- Redis (用于缓存和 Celery)
|
||
- Git
|
||
- 微信开发者工具 (用于小程序开发)
|
||
|
||
### 2. 后端启动 (Server)
|
||
|
||
进入后端目录:
|
||
```bash
|
||
cd admin/server
|
||
```
|
||
|
||
创建并激活虚拟环境 (推荐):
|
||
```bash
|
||
# Windows
|
||
python -m venv .venv
|
||
.venv\Scripts\activate
|
||
|
||
# Linux/macOS
|
||
python3 -m venv .venv
|
||
source .venv/bin/activate
|
||
```
|
||
|
||
安装依赖:
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
配置数据库:
|
||
默认使用 SQLite,配置文件位于 `admin/server/server/conf_e.py`。如需修改为 MySQL/PostgreSQL,请修改该文件中的 `DATABASES` 配置。
|
||
|
||
执行数据库迁移:
|
||
```bash
|
||
python manage.py makemigrations
|
||
python manage.py migrate
|
||
```
|
||
|
||
创建超级管理员:
|
||
```bash
|
||
python manage.py createsuperuser
|
||
```
|
||
|
||
启动开发服务器:
|
||
```bash
|
||
python manage.py runserver
|
||
```
|
||
后端服务默认运行在 `http://127.0.0.1:8000`。
|
||
|
||
启动 Celery Worker (可选,用于异步任务):
|
||
```bash
|
||
# Windows (需安装 gevent 或 eventlet)
|
||
celery -A server worker -l info -P eventlet
|
||
|
||
# Linux/macOS
|
||
celery -A server worker -l info
|
||
```
|
||
|
||
### 3. 后端管理前端启动 (Web Client)
|
||
|
||
进入前端目录:
|
||
```bash
|
||
cd admin/client
|
||
```
|
||
|
||
安装依赖:
|
||
```bash
|
||
npm install
|
||
# 或者使用 yarn / cnpm
|
||
# npm install --registry=https://registry.npmmirror.com
|
||
```
|
||
|
||
启动开发服务器:
|
||
```bash
|
||
npm run dev
|
||
```
|
||
前端服务启动后,通常访问地址为 `http://localhost:9528`。
|
||
|
||
### 4. 微信小程序启动 (Mini Program)
|
||
|
||
1. 下载并安装 [微信开发者工具](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html)。
|
||
2. 打开微信开发者工具,选择 **导入项目**。
|
||
3. 目录选择本项目下的 `wechat-mini-program` 文件夹。
|
||
4. AppID 请在 `project.config.json` 中查看或替换为您自己的 AppID。
|
||
5. 点击 **编译** 即可预览。
|
||
|
||
**注意**: 请确保后端服务已启动,并在小程序代码中 (`utils/request.js` 或类似文件) 配置正确的后端 API 地址。
|
||
|
||
## 📦 功能模块
|
||
|
||
- **系统管理 (System)**
|
||
- 用户/角色/菜单/部门管理。
|
||
|
||
- **客户关系管理 (CRM)**
|
||
- 客户信息维护与线索管理。
|
||
|
||
- **工作流 (Workflow)**
|
||
- 审批流程配置与流转。
|
||
|
||
- **移动端 (Mini Program)**
|
||
- 首页展示、详情浏览、个人中心等功能。
|
||
|
||
## 🔧 部署构建
|
||
|
||
### Web 前端构建
|
||
```bash
|
||
cd admin/client
|
||
npm run build:prod
|
||
```
|
||
构建生成的静态文件位于 `admin/client/dist` 目录。
|
||
|
||
### 后端部署
|
||
推荐使用 Gunicorn + Nginx 进行部署。
|
||
参考 `admin/server/start.sh` 进行容器化部署。
|
||
|
||
### 小程序发布
|
||
在微信开发者工具中点击 **上传**,然后在微信公众平台进行版本管理和发布。
|
||
|
||
## 📄 许可证
|
||
MIT License
|