catalog/repos/agusabas--django-skills.md

98 lines
2.8 KiB
Markdown
Raw Normal View History

2026-04-07 11:44:56 +08:00
# Django技能集合
`Django` `REST框架` `清洁架构` `Celery` `Python`
# Django 技能
用于 Django 开发的 Agent 技能集遵循清洁架构、SOLID 原则和现代最佳实践。
## 安装
```bash
# 列出可用技能
npx skills add agusabas/django-skills --list
# 安装所有技能
npx skills add agusabas/django-skills --all
# 安装特定技能
npx skills add agusabas/django-skills --skill django-clean-drf
npx skills add agusabas/django-skills --skill django-celery-expert
npx skills add agusabas/django-skills --skill refactordjango
```
## 可用技能
### django-clean-drf
全面的技能,用于按照清洁架构模式构建生产级 Django REST Framework API。
**功能特性:**
- 带有输入/输出 DTO 的用例层
- 服务层(静态查询、实例变更)
- 验证返回 `tuple[bool, str]` 而非抛出异常
- 读/写序列化器分离
- 构造函数注入以提升可测试性
- 按层划分的完整测试模式
- 查询优化N+1 问题预防、select_related、prefetch_related
- 分页、过滤、搜索和排序
- JWT 认证与权限控制
- 生产部署Gunicorn、Docker、缓存、日志、Sentry
- 面向 API 后端的 Django Admin 配置
- 使用 Ruff 的编码规范
**适用场景:** 创建新的 Django DRF 应用、实现 CRUD 操作、设计具有清晰关注点分离的 API 端点、优化查询、配置认证,或准备生产部署。
### django-celery-expert
Celery 任务处理与 Django 集成。
**功能特性:**
- 任务设计模式
- 错误处理与重试机制
- 定时任务beat
- 生产环境监控
- Django 集成模式
**适用场景:** 后台任务处理、异步操作、定时作业或 Celery 配置。
### refactordjango
将现有 Django 代码重构为清洁架构。
**功能特性:**
- 将臃肿的视图转换为用例
- 从视图中提取服务层
- 将异常转换为返回值
- 分离读/写序列化器
- 应用 Python 3.12+ 和 Django 5+ 模式
- 修复 N+1 查询及反模式
**适用场景:** 重构遗留 Django 代码、现代化改造项目、将清洁架构应用于现有代码库。
## 架构概览
```
视图层HTTP→ 用例层(业务逻辑)→ 服务层(数据访问)→ 模型层(领域)
```
### 核心原则
1. **依赖关系向内流动** —— 外层依赖内层
2. **业务逻辑不使用异常** —— 返回 `Output` DTO 或 `tuple[bool, str]`
3. **查询为静态方法,变更为实例方法**
4. **视图不直接访问模型** —— 通过服务层访问
5. **序列化器不包含业务逻辑** —— 由用例层负责
6. **DTO 使用 `@dataclass(frozen=True, slots=True)`**
7. **状态变更使用 `@transaction.atomic`**
8. **构造函数注入以提升可测试性**
## 环境要求
- Python 3.12+
- Django 5.0+
- Django REST Framework 3.14+
## 许可证
MIT