J'ai deux modèles simples: Livre et AuteurEst-il possible de combiner des annotations avec report/uniquement dans django 1.2.1?
Chaque livre a un auteur, lié par une clé étrangère.
Les choses fonctionnent normalement jusqu'à ce que j'essaie d'utiliser defer/uniquement sur une annotation:
authors=Author.objects.all().annotate(bookcount=Count('books'))
qui fonctionne. La requête ressemble à:
select table_author.name, table_author.birthday, COUNT(table_book.id) as bookcount
from table_book left outer join table_author on table_author.id=table_book.author_id
group by table_author.id
donc très simple - tout sélectionner de l'auteur, et en outre sélectionner un nombre de livres.
Mais quand je fais ce qui suit, tout change:
simple=authors.defer('birthday')
maintenant, la simple requête ressemble à ceci:
select COUNT(table_book.id) as bookcount from table_book left outer join
table_author on table_author.id=table_book.author_id group by table_author.id
et il a complètement perdu les informations supplémentaires. Quel est le problème?
+1 pour un bug Django! – katrielalex