如何在prefetch_related之后清除Django的缓存查询

时间:2017-03-31 19:59:27

标签: django-orm

我正在使用相关评论呈现项目列表。我使用了prefetch_related,因此不会为每个项目的评论发出新查询。

items = Item.objects.all().prefetch_related('reviews')

稍后,我添加了评论并尝试重新计算平均值:

item = items[0]
Review.objects.create(item=item, score=5)

# recalculate average
reviews = item.reviews.all()
...

哦不!此评论列表不包括我刚刚创建的评论列表。如何清除此缓存以便可以重新执行查询?或者我应该以不同的方式创建评论?

1 个答案:

答案 0 :(得分:3)