values, values_list et count
Récupérez des données légères et des agrégats.
values, values_list et count est une leçon Django Academy gratuite sur CoddyKit. Ceci est la leçon 4 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.
Why Go Lightweight
Full model objects carry every field. When you only need a column or two, lighter tools fetch less data and run faster.
values() Returns Dicts
Call values() and each row comes back as a dictionary instead of a model instance. Handy for JSON and quick reads.
Book.objects.values("title", "year")Pick Only What You Need
Name the fields you pass to values() and Django selects just those columns, keeping each dictionary small and focused.
Book.objects.values("title")values_list() Returns Tuples
Prefer tuples? values_list() gives each row as a tuple of values in the order you named the fields.
Book.objects.values_list("title", "year")Flatten a Single Column
Asking for one field? Add flat=True to get a clean list of plain values instead of one-item tuples.
Book.objects.values_list("title", flat=True)flat Needs One Field
Remember, flat=True only works with a single field. Pass two fields and Django raises an error to keep things clear.
These Are Still QuerySets
Both values() and values_list() stay lazy QuerySets, so you can filter and order them before they ever run.
Book.objects.filter(published=True).values("title")Count Without Loading
Need just a total? count() asks the database to count rows directly, far cheaper than pulling them all into Python.
Book.objects.filter(published=True).count()count vs len
Use count() when you only need the number. Calling len() first loads every object, then counts in memory.
Does Anything Match
To check if rows exist, exists() beats count(). It stops at the first match and returns a simple True or False.
Book.objects.filter(year=2024).exists()Combine for Clean Reads
Mix these freely: filter to narrow, then values_list for a tidy list or count for a total. Each query stays lean.
Book.objects.filter(published=True).values_list("id", flat=True)Quick Check
You want a plain list of every book title, not tuples or dictionaries. What do you use?
Recap
Wonderful! values() gives dicts, values_list() gives tuples, and count() totals rows in the database. 📊
Questions Fréquemment Posées
La leçon « values, values_list et count » est-elle gratuite ?
Oui — le texte complet de « values, values_list et count » 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 « values, values_list et count » ?
Récupérez des données légères et des agrégats. 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 4 sur 4.
Combien de temps prend la leçon « values, values_list et count » ?
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
- all(), get() et filter()
- Recherches sur les champs et exclude()
- order_by, extraction et évaluation différée
- values, values_list et count