Lookup dei campi ed exclude()
Esegua query con contains, gte, in e altro
Lookup dei campi ed exclude() è una lezione Django Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Django Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Django Academy include 4 lezioni in totale.
Oltre l'uguaglianza
I filtri semplici verificano l'uguaglianza, ma le query reali richiedono intervalli e corrispondenze testuali. Le Field lookups sbloccano questa potenza aggiuntiva.
Il doppio underscore
Una lookup è composta dal nome del campo, da un doppio underscore e dall'operatore. Questa piccola sintassi permette a Django di interpretare condizioni più ricche.
Book.objects.filter(year__gte=2020)Maggiore e minore di
Usate gt, gte, lt e lte per gli intervalli numerici o di date. Corrispondono direttamente agli operatori di confronto SQL.
Book.objects.filter(price__lt=20)Cercate all'interno del testo
La lookup contains trova le righe in cui un campo contiene la vostra sottostringa in una posizione qualsiasi. È ottima per le ricerche semplici.
Book.objects.filter(title__contains="Python")Ignorate la distinzione tra maiuscole e minuscole
Aggiunga una i per le ricerche di testo senza distinzione tra maiuscole e minuscole, come icontains o iexact, così le maiuscole non compromettono mai una corrispondenza.
Book.objects.filter(title__icontains="python")Inizia e termina
Trovi i bordi di una stringa con startswith e endswith. Anche questi hanno le rispettive varianti che ignorano maiuscole e minuscole.
Book.objects.filter(title__startswith="The")Corrispondenza con un insieme di valori
La ricerca in mantiene le righe il cui valore compare nell'elenco fornito. È più ordinata rispetto alla concatenazione di molti controlli OR.
Book.objects.filter(year__in=[2022, 2023, 2024])Verifica dei valori vuoti
Usi isnull per trovare le righe in cui una colonna è NULL, oppure imposti False per trovare le righe che contengono un valore.
Book.objects.filter(summary__isnull=True)Invertire la logica
A volte desidera tutto tranne una corrispondenza. exclude() restituisce le righe che NON soddisfano la condizione.
Book.objects.exclude(published=True)Le ricerche funzionano anche in exclude
Qualsiasi ricerca su un campo che funziona in filter funziona anche in exclude(). L'unica differenza è che il risultato viene invertito.
Book.objects.exclude(year__gte=2020)Combinare filter ed exclude
Le concateni per mantenere un gruppo ed escluderne un altro. Ogni chiamata restringe ulteriormente lo stesso QuerySet lazy.
Book.objects.filter(published=True).exclude(price__gt=50)Verifica rapida
Desidera i libri il cui titolo contiene "django", indipendentemente dalle maiuscole e minuscole. Quale ricerca è adatta?
Riepilogo
Ha fatto un salto di livello! Le ricerche sui campi usano il doppio underscore per intervalli e testo, mentre exclude() inverte qualsiasi condizione. 🔍
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Lookup dei campi ed exclude()» è gratuita?
Sì — il testo completo di «Lookup dei campi ed exclude()» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Django Academy, passa a CoddyKit PRO. Il corso Django Academy include 4 lezioni in totale.
Cosa imparerò in «Lookup dei campi ed exclude()»?
Esegua query con contains, gte, in e altro Eserciti Django Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Django Academy?
Non è richiesta alcuna esperienza precedente. Django Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Lookup dei campi ed exclude()»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Django Academy?
Sì. Ogni lezione Django Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- all(), get() e filter()
- Lookup dei campi ed exclude()
- order_by, slicing e valutazione lazy
- values, values_list e count