0Pricing
Django Academy · Lección

values, values_list y count

Obtenga datos ligeros y agregaciones

values, values_list y count es una lección gratuita de Django Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Django Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Django Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

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. 📊

Preguntas frecuentes

¿La lección «values, values_list y count» es gratis?

Sí — el texto completo de «values, values_list y count» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Django Academy, actualiza a CoddyKit PRO. El curso de Django Academy incluye 4 lecciones en total.

¿Qué aprenderé en «values, values_list y count»?

Obtenga datos ligeros y agregaciones Practicas Django Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Django Academy?

No se requiere experiencia previa. Django Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «values, values_list y count»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Django Academy?

Sí. Cada lección de Django Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. all(), get() y filter()
  2. Búsquedas de campos y exclude()
  3. order_by, slicing y evaluación diferida
  4. values, values_list y count
← Volver a Django Academy