values, values_list e count
Obtenha dados leves e agregações
values, values_list e count é uma aula grátis de Django Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Django Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Django Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em 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. 📊
Perguntas Frequentes
A aula “values, values_list e count” é grátis?
Sim — o texto completo de “values, values_list e count” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Django Academy, atualize para CoddyKit PRO. O curso de Django Academy inclui 4 aulas no total.
O que vou aprender em “values, values_list e count”?
Obtenha dados leves e agregações Você pratica Django Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Django Academy?
Nenhuma experiência prévia é necessária. Django Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “values, values_list e count”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Django Academy?
Sim. Cada aula de Django Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- all(), get() e filter()
- Consultas de Campo e exclude()
- order_by, Recortes e Avaliação Preguiçosa
- values, values_list e count