0Pricing
Django Academy · Leçon

Recherches sur les champs et exclude()

Interrogez avec contains, gte, in et bien d’autres critères.

Recherches sur les champs et exclude() est une leçon Django Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Django Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Django Academy comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Beyond Equality

Plain filters check for equality, but real queries need ranges and text matches. Field lookups unlock that extra power.

The Double Underscore

A lookup is the field name, a double underscore, then the operator. That tiny syntax is how Django reads richer conditions.

Book.objects.filter(year__gte=2020)

Greater and Less Than

Use gt, gte, lt, and lte for numeric or date ranges. They map straight to SQL comparison operators.

Book.objects.filter(price__lt=20)

Search Inside Text

The contains lookup finds rows where a field holds your substring anywhere inside it. Great for simple searches.

Book.objects.filter(title__contains="Python")

Ignore the Case

Add an i for case-insensitive text lookups like icontains or iexact, so capitals never trip up a match.

Book.objects.filter(title__icontains="python")

Starts and Ends

Match the edges of a string with startswith and endswith. Both have case-insensitive twins too.

Book.objects.filter(title__startswith="The")

Match a Set of Values

The in lookup keeps rows whose value appears in a list you pass. It is cleaner than chaining many OR checks.

Book.objects.filter(year__in=[2022, 2023, 2024])

Check for Empty Values

Use isnull to find rows where a column is NULL, or set it False to find the rows that have a value.

Book.objects.filter(summary__isnull=True)

Flip the Logic

Sometimes you want everything except a match. exclude() returns the rows that do NOT meet the condition.

Book.objects.exclude(published=True)

Lookups Work in exclude Too

Any field lookup that works in filter also works in exclude(). The only difference is the result is inverted.

Book.objects.exclude(year__gte=2020)

Combine filter and exclude

Chain both together to keep one group and drop another. Each call narrows the same lazy QuerySet further.

Book.objects.filter(published=True).exclude(price__gt=50)

Quick Check

You want books whose title holds "django" regardless of capitalization. Which lookup fits?

Recap

You leveled up! Field lookups use the double underscore for ranges and text, and exclude() flips any condition. 🔍

Questions Fréquemment Posées

La leçon « Recherches sur les champs et exclude() » est-elle gratuite ?

Oui — le texte complet de « Recherches sur les champs et exclude() » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Django Academy, passe à CoddyKit PRO. Le cours Django Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Recherches sur les champs et exclude() » ?

Interrogez avec contains, gte, in et bien d’autres critères. Tu pratiques Django Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Django Academy ?

Aucune expérience préalable n'est requise. Django Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Recherches sur les champs et exclude() » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Django Academy ?

Oui. Chaque leçon Django Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. all(), get() et filter()
  2. Recherches sur les champs et exclude()
  3. order_by, extraction et évaluation différée
  4. values, values_list et count
← Retour à Django Academy