0
私はすべてBlogs
を1つのクエリで取得したいと同時に、ブログがある場合は、各ブログのエントリ(またはエントリ)を知りたいと思います。1つのモデルからdjangoクエリを取得し、そのモデルにForeignKeyという情報を追加する方法はありますか?
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headline = models.CharField(max_length=255)
同様に、blog.ENTRY属性にアクセスします。最初は気をつけてください。 1)すべてのブログを取得し、2)そのエントリで各ブログエントリattrの設定:
for blog in Blog.objects.all():
entry = Entry.objects.filter(blog=blog)
setattr(blog, 'ENTRY', entry)
しかし、私はforループ内のエントリフィルタクエリを行うにはしたくないので、私は、ただ一つのクエリでこれをやりたいです。
あなたがしようとしていることがわかりません。各ブログには、すでに関連エントリのクエリーセットである属性「entry_set」があります。 –
このスレッドと 'select_related'のDjangoドキュメントをチェックしてください:https://stackoverflow.com/questions/33230540/django-select-related-when-to-use-it – whp
申し訳ございませんが、あなたの質問をあまりにも早く読んでください'select_related'と' prefetch_related'を説明するより良いスレッド:https://stackoverflow.com/questions/23121850/select-related-with-reverse-foreign-keys – whp