
QuerySets avancés
Lookups, Q objects, F expressions, aggregation, annotations, select_related, prefetch_related
1Quel lookup permet de filtrer les objets dont un champ contient une chaîne spécifique, sans tenir compte de la casse ?
Quel lookup permet de filtrer les objets dont un champ contient une chaîne spécifique, sans tenir compte de la casse ?
Réponse
Le lookup icontains effectue une recherche insensible à la casse pour vérifier si un champ contient une sous-chaîne. Le préfixe 'i' dans icontains indique que la comparaison ignore les majuscules/minuscules, ce qui est utile pour les recherches utilisateur où la casse peut varier.
2Quelle est la principale différence entre select_related et prefetch_related ?
Quelle est la principale différence entre select_related et prefetch_related ?
Réponse
select_related utilise un JOIN SQL pour récupérer les objets liés en une seule requête, mais fonctionne uniquement pour les relations ForeignKey et OneToOne. prefetch_related effectue des requêtes séparées puis lie les objets en Python, ce qui le rend adapté aux relations ManyToMany et reverse ForeignKey.
3Quel objet Django permet de combiner des conditions de filtre avec un opérateur OR ?
Quel objet Django permet de combiner des conditions de filtre avec un opérateur OR ?
Réponse
Les objets Q permettent de construire des requêtes complexes en combinant des conditions avec les opérateurs | (OR), & (AND) et ~ (NOT). Sans Q objects, les appels chaînés à filter() appliquent uniquement des conditions AND, rendant impossible la création de requêtes OR directement.
Quel est l'avantage principal d'utiliser F() expressions au lieu de valeurs Python dans une mise à jour ?
Quelle méthode d'agrégation retourne un dictionnaire avec les valeurs calculées au lieu d'un QuerySet ?
+22 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
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
Commandes Django personnalisées
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