
Commandes Django personnalisées
Management commands, BaseCommand, argument parsing, scheduling, cron jobs, automation
1Où placer le fichier d'une commande Django personnalisée pour qu'elle soit automatiquement détectée ?
Où placer le fichier d'une commande Django personnalisée pour qu'elle soit automatiquement détectée ?
Réponse
Les commandes Django personnalisées doivent être placées dans le répertoire management/commands/ d'une application Django. Ce répertoire doit contenir un fichier __init__.py dans management/ et dans commands/. Django scanne automatiquement ce chemin pour découvrir les commandes disponibles. Le nom du fichier Python devient le nom de la commande exécutable via manage.py.
2Quelle classe de base utiliser pour créer une commande Django personnalisée ?
Quelle classe de base utiliser pour créer une commande Django personnalisée ?
Réponse
BaseCommand est la classe de base standard fournie par django.core.management.base pour créer des commandes personnalisées. Elle fournit l'infrastructure nécessaire : parsing des arguments, gestion des couleurs de sortie, gestion des erreurs et intégration avec manage.py. La méthode handle() doit être implémentée pour contenir la logique de la commande.
3Comment définir des arguments positionnels dans une commande Django personnalisée ?
Comment définir des arguments positionnels dans une commande Django personnalisée ?
Réponse
La méthode add_arguments() permet de définir les arguments d'une commande en utilisant le parser argparse. Pour les arguments positionnels, on utilise parser.add_argument('nom') sans préfixe tiret. On peut spécifier nargs pour le nombre d'arguments attendus ('+' pour un ou plusieurs, '*' pour zéro ou plusieurs). Les arguments sont ensuite accessibles via le dictionnaire options dans handle().
Quelle méthode utiliser pour afficher un message de succès avec les couleurs appropriées dans une commande Django ?
Comment signaler une erreur qui arrête l'exécution d'une commande Django avec un code de sortie non-zéro ?
+15 questions d'entretien
Autres sujets d'entretien Django
Les bases de Python
Python orienté objet
Fondamentaux Django
Models Django - Bases
Vues Django
Templates Django
Formulaires Django
QuerySets avancés
Authentification Django
Middleware Django
Admin Django
Django REST Framework
Signaux Django
Upload de fichiers
Cache Django
Sessions Django
Email Django
Tests Django
Sécurité Django
Déploiement Django
ORM Django avancé
Performance Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django dans un écosystème Microservices
Internationalisation Django
Design Patterns Django
Django Async & ASGI
Settings & Configuration Production
Observabilité & Monitoring
Maîtrise Django pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement