掌握Django 5.x,包括异步视图、DRF、Celery和Django Channels。构建具有适当架构、测试和部署的可扩展Web应用
技能概述
django-pro 技能是一个专门用于Django开发的专家级技能,专注于Django 5.x最佳实践、可扩展架构和现代Web应用开发。该技能帮助开发者掌握传统同步和异步Django模式,深入了解Django生态系统,包括DRF、Celery和Django Channels。
下载地址:https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/django-pro
主要功能
- 核心Django专业知识: Django 5.x特性、异步视图、中间件和ORM操作
- 架构与项目结构: 企业级可扩展Django项目架构、模块化应用设计
- 现代Django特性: 异步视图、ASGI部署、Django Channels、Celery任务处理
- 测试与质量: pytest-django全面测试、工厂模式、性能测试
- 安全与认证: Django安全中间件、JWT认证、OAuth2集成
- 数据库与ORM: 复杂数据库迁移、多数据库配置、PostgreSQL特性
- 部署与DevOps: 生产就绪配置、Docker容器化、CI/CD流水线
- 前端集成: Django模板与现代JavaScript框架、HTMX集成
触发条件
在以下情况下应该调用此技能:
- 处理Django专业任务或工作流
- 需要Django专业指导、最佳实践或检查清单
- 构建可扩展的Web应用
- 实现异步视图和实时功能
- 需要Django REST Framework开发
使用场景
场景1: 查询优化
优化导致N+1查询的Django查询集
场景2: 架构设计
为多租户SaaS应用设计可扩展的Django架构
场景3: 异步处理
实现异步视图处理长时间运行的API请求
场景4: 实时功能
设置Django Channels实现实时通知
处理过程
1. 分析需求
分析Django特定考虑因素的需求
2. 提供Django惯用解决方案
使用内置功能提供Django惯用解决方案
3. 提供生产就绪代码
提供带有适当错误处理的生产就绪代码
4. 包含测试
为实现的功能包含测试
5. 考虑性能影响
考虑数据库查询的性能影响
6. 文档化安全考虑
在相关时文档化安全考虑
7. 提供迁移策略
为数据库更改提供迁移策略
8. 建议部署配置
在适用时建议部署配置
核心能力
Django哲学
遵循Django的"开箱即用"哲学,优先使用内置功能
可重用代码
强调可重用、可维护的代码
安全与性能
同等优先考虑安全和性能
全面测试
为所有关键路径编写全面的测试
最佳实践
- 使用内置功能: 在使用第三方包之前优先使用Django内置功能
- 可重用代码: 编写可重用、可维护的代码
- 安全优先: 同等优先考虑安全和性能
- 全面测试: 为所有关键路径编写全面的测试
- 代码文档: 使用清晰的文档字符串和类型提示记录代码
- 遵循规范: 遵循PEP 8和Django编码风格
- 错误处理: 实现适当的错误处理和日志记录
- 数据库考虑: 考虑所有ORM操作的数据库影响
示例交互
- "帮我优化这个导致N+1查询的Django查询集"
- "为多租户SaaS应用设计可扩展的Django架构"
- "实现异步视图处理长时间运行的API请求"
- "创建一个带有内联表单集的自定义Django管理界面"
- "设置Django Channels实现实时通知"
- "为高流量Django应用优化数据库查询"
- "在DRF中实现带有刷新令牌的JWT认证"
- "使用Celery创建健壮的后台任务系统"
限制说明
- 仅当任务明确匹配上述范围时使用此技能
- 不要将输出作为环境特定验证、测试或专家审查的替代品
- 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清