O problema de consultas N+1 é a questão de performance mais comum do Django ORM: acessar objetos relacionados em um loop dispara uma consulta ao banco de dados separada para cada um. select_related e prefetch_related resolvem isso buscando dados relacionados de forma eficiente — são ferramentas de otimização essenciais.
O problema N+1
books = Book.objects.()
book books:
(book.author.name)
