我有一个视图,它在三个独立的数据库上执行相当繁重的查询,并将每个查询的计数输出到模板中。从用户可以到三个结果之一,并获得详细的结果。我不想在我的观点中重复自己,并希望最大限度地提高绩效,所以我的问题是实现这一结果的最佳方法是什么?
我可以将查询集传递给另一个页面(获取还是发布)? 我应该在会话中保存查询集(我目前没有使用此项目的会话,因为它是完全公开的) 或者有更好的方法吗?
我知道这不是一个非常具体的问题,但我很感激任何关于此的建议(我猜 - 并非罕见)。
答案 0 :(得分:3)
根据我的经验,我认为将结果保存在session
上是一个很好而简单的解决方案。
答案 1 :(得分:1)
听起来你想看看caching
答案 2 :(得分:1)
将查询集的结果保存到会话中。当我说要保存结果时,我的意思是在其上运行list()
来执行它们,然后将结果列表存储在request.session
中。