5

モデルがあるとします:

class Entry(models.Model):
    ...
    tags = TaggableManager()

テンプレートで Entry.objects.all() を反復処理すると、entry.tags.all はデータベースに対してもう 1 つのクエリを生成します。クエリ数を減らすことはできますか? select_related() のようなものを使用します (django-taggit は manytomany リレーションを使用するため、機能しないことはわかっていますが、関連するタグを持つすべてのエントリを 1 回のヒットで選択する方法があるはずです)?

4

2 に答える 2

0

Select Reverseを使用してみてください。これは、1 つのクエリで多対多の関係全体を取得するように設計されています。

于 2011-07-01T13:52:22.560 に答える