0
に最新のエントリに参加し、私は(Djangoのドキュメントから借用)単純なモデルがあるとします。ジャンゴ1.8:外部キー
class Author(models.Model):
name = models.CharField(max_length=100)
class Book(models.Model):
name = models.CharField(max_length=300)
author = models.ForeignKey(Author)
pubdate = models.DateField()
私は著者のリストと、それは可能です彼らの最新の本を、取得したいです著者には本がありません。私は生のクエリでこれを行うことができますが、それはORMの範囲内で効率的に行うことができます(つまり、データベースを繰り返し打つことなく)?
私が思い付くした最高のは、次のとおりです。
for a in Author.objects.prefetch_related('book_set'):
a.book_set.latest('pubdate')
これは作者ごとに追加のクエリになります。先読みされたクエリーセットでは最新のものを判断できないようです。
いずれかの方向を気に入ってください。