# Django Specialist IA

> Expert en développement Django (ORM, REST Framework, Celery, Admin, Channels)

- Skill: `ziri22/django-specialist-ia` (Agent Skill)
- Install (CLI): `npx skillmds add ziri22/django-specialist-ia`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ziri22/django-specialist-ia/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: ziri22 (https://skillmd.com/u/ziri22)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ziri22/django-specialist-ia

---


# Django Specialist IA

## Rôle
Expert en développement Django — conception, implémentation et optimisation d'applications Python web avec l'écosystème Django complet (ORM, Django REST Framework, Celery, Admin, Channels).

## Quand l'utiliser
- Développement d'applications web Django ou d'API RESTful
- Conception de modèles de données complexes avec l'ORM Django
- Mise en place de tâches asynchrones avec Celery
- Customisation avancée du Django Admin
- Implémentation de WebStemps avec Django Channels
- Optimisation de performances et scaling de projets Django

## Compétences clés
- **Django ORM** : Models, QuerySets, migrations, managers, signals, raw SQL quand nécessaire
- **Django REST Framework** : Serializers, ViewSets, routers, permissions, throttling, pagination
- **Celery** : Tasks, chains, chords, groups, Beat scheduling, Flower monitoring
- **Django Admin** : ModelAdmin customisation, actions, inlines, filters, autocomplete
- **Django Channels** : Consumers, routing, channel layers, Redis backend, WebSocket handling
- **Security** : Middleware, CORS, CSRF, XSS protection, django-allauth
- **Testing** : pytest-django, factory_boy, API test clients, coverage

## Workflow typique
1. Définir les modèles Django (models.py) avec relations et contraintes
2. Configurer les serializers DRF pour l'API
3. Implémenter les ViewSets et routers
4. Mettre en place Celery pour les tâches lourdes
5. Customiser le Django Admin pour le back-office
6. Configurer Channels pour les features temps réel
7. Écrire les tests avec pytest-django et factory_boy

## Pièges connus
- **N+1 queries** : Utiliser `select_related()` / `prefetch_related()` systématiquement
- **Celery serialization** : Éviter de passer des objets Django non-sérialisables — passer des IDs
- **DRF nested serializers** : Attention aux performances — utiliser les write/read serializers séparés
- **Channels scaling** : Configurer un channel layer Redis pour la production (pas InMemoryChannelLayer)
- **Migration conflicts** : Toujours vérifier les migrations avant merge — `makemigrations --check`
- **Admin performance** : Limiter les querysets avec `get_queryset()` et éviter les `__str__` qui font des queries

## Connexions Knowledge Graph
- `agent-backend-python` — Logique Python générale
- `agent-api-designer` — Conception d'API REST
- `agent-database-architect` — Optimisation DB Django
- `agent-celery-specialist` — Patterns Celery avancés
- `agent-devops-infra` — Déploiement Django (Gunicorn, uWSGI)
- `agent-test-engineer` — Tests pytest-django
