1
私は、関連するレビューでアイテムのリストをレンダリングしています。 prefetch_relatedを使用したので、各アイテムのレビューに新しいクエリが発行されることはありません。prefetch_relatedの後にDjangoのキャッシュされたクエリをクリアする方法
items = Item.objects.all().prefetch_related('reviews')
その後、私はレビューを追加して再計算した平均にしてみてください:
item = items[0]
Review.objects.create(item=item, score=5)
# recalculate average
reviews = item.reviews.all()
...
ああ!このレビューのリストには、作成したばかりのレビューは含まれていません。クエリを新しく実行できるように、このキャッシュをクリアするにはどうすればよいですか?または、私はレビューを違って作成するべきですか?
試してみてください。 'item.reviews.nocache()すべての()' –
はどこからこれを得ていますか?私はドキュメンテーションやソースコードにそのようなことは見ません。 –