Files
djangoadmin-wiki/DjangoAdmin_Tornado_EleVue/zh/why.md
T
2026-09-16 10:11:44 +08:00

124 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 为什么选择我们?
:::tip 核心价值
企业级数据中台不应从零搭建。本框架提供开箱即用的完整解决方案,为中大型企业构建统一的数字化基座。
:::
## 解决什么问题?
每个企业项目都需要用户管理、权限控制、日志记录、文件上传等基础能力。从零开发这些模块:
- 耗时 2-4 周,且容易遗漏安全细节
- 每个项目重复造轮子,维护成本高
- 缺乏统一规范,代码质量参差不齐
- 安全防护不全面,上线后才发现漏洞
本框架将这些通用能力封装为可复用的模块,新增业务模块只需 **4 个文件 + 1 行注册**:
```
models.py → 数据模型定义
schemas.py → 表单校验规则
repository.py → 数据访问层
service.py → 业务逻辑层
+ 1 行路由注册 → 自动挂载到 API
```
## 核心优势
### 1. 开箱即用,功能完整
预置企业后台所需的全部基础功能,无需额外开发:
- **系统管理**:用户、角色、菜单、部门、岗位、职级
- **权限控制**:RBAC 三层模型,按钮级粒度,前后端双重校验
- **数据管理**:字典、配置、参数,运行时可调
- **日志审计**:登录日志 + 操作日志,中间件自动记录,无需手动埋点
- **定时任务**:Cron 调度 + 执行日志,支持动态启停
- **代码生成器**:根据数据库表一键生成前后端 CRUD 代码,含列表、表单、API 全套
### 2. 高度可定制,不侵入核心
分层架构 + 模块化设计,业务代码与框架核心完全解耦:
- **后端三层分离**:Endpoint(HTTP)→ Service(业务)→ Repository(数据),职责清晰
- **基类复用**:BaseRepository / BaseService 提供 30+ 通用方法,子类只需声明差异
- **模块可插拔**:业务模块位于 `src/modules/`,按需增删不影响框架
- **中间件可扩展**:CORS、限流、日志、事务按需注册,链式处理
### 3. 多数据库支持,数据可迁移
通过 `DB_DRIVER` 环境变量切换数据库,无需修改业务代码:
| 数据库 | 说明 |
|--------|------|
| MySQL | 默认,生产推荐 |
| PostgreSQL | 企业级首选 |
| SQL Server | 国企/政企场景 |
| SQLite | 开发/测试 |
| Oracle | 金融/传统企业 |
不仅支持结构迁移,还提供 `scripts/migrate_db.py` 跨库数据泵送工具——从源库到目标库的结构 + 数据整体迁移,含自增序列重置和逐表 COUNT 校验。
### 4. 安全体系完善
后台系统安全性是刚需,内置多层安全防护:
- **认证安全**:JWT 令牌 + 黑名单机制,密码 bcrypt 加盐加密
- **登录防护**:图形验证码防暴力破解、失败自动锁定、密码强度校验
- **接口防护**:Redis 滑动窗口限流、防重复提交(幂等性)
- **文件上传**:扩展名白名单 + 魔术字节校验 + 路径遍历防护 + 高危格式黑名单
- **RBAC 权限**:后端装饰器 + 前端指令双重校验,精确到按钮级,管理员自动绕过
- **数据安全**:软删除机制、敏感字段序列化排除、XSS 清洗
### 5. 部署便捷,开箱即用
- **Docker 一键启动**:`docker-compose up --build`,含后端 + MySQL + Redis
- **多环境支持**:开发 / 测试 / UAT / 生产,环境变量隔离
- **进程管理**:Supervisor 配置模板,自动重启、日志轮转
- **Nginx 配置**:提供企业级反向代理模板,含 HTTPS、Gzip、静态资源缓存
### 6. 企业级文档,覆盖全场景
97 篇文档覆盖从入门到运维的完整链路:
```
快速入门 → 环境搭建、启动调试、第一个接口
模块开发 → 从 Model 到前端页面的端到端教程
架构设计 → 分层架构、基类体系、缓存、安全
开发指南 → 后端核心、业务模块、前端组件、联调
代码生成器 → CLI / Web UI / 自定义模板
运维部署 → Docker、Nginx、Supervisor、监控
规范标准 → API 响应、分页、Git、测试、文档
```
## 适合谁?
| 场景 | 说明 |
|------|------|
| **快速搭建新项目** | 基础功能开箱即用,专注业务开发 |
| **企业数字化转型** | 稳定可靠的后台框架,多数据库适配 |
| **团队技术统一** | 统一的分层架构和编码规范 |
| **开发者学习** | 完整的企业级项目参考,文档齐全 |
## 技术栈
| 层级 | 技术 |
|------|------|
| 后端 | Tornado + SQLAlchemy + Pydantic |
| 前端 | Vue3 + ElementPlus + TypeScript + Vite |
| 基础设施 | MySQL / PostgreSQL / Redis / Docker |
详细版本号和技术选型说明见 [技术选型](/zh/volume3/tech-stack)。
## 总结
作为企业级数据中台解决方案,本框架为中大型企业提供统一的后台管理基座,承载用户、权限、配置、日志等公共能力,让各业务线聚焦于核心业务而非基础设施建设。
- **开箱即用**:6 大功能模块预置完备,开箱即用
- **安全可靠**:6 层安全防护体系,覆盖认证、登录、接口、文件、权限、数据全链路
- **灵活扩展**:分层架构 + 模块化设计,业务代码与框架核心完全解耦
- **多库适配**:5 种数据库一键切换,含跨库数据迁移工具
- **文档齐全**:97 篇企业级文档,从入门到运维全覆盖
**核心价值:为中大型企业提供可复用的数字化基座,让每个新项目不再从零搭建基础能力。**