所以我有一个充满帖子的论坛帖子,我想急切地从帖子和那些用户角色加载用户,以减少数据库查询的总数(这似乎是最好的做事方式) )
(为了让事情变得更有趣,论坛和帖子是嵌套资源,如果这会产生差异)
def show
@forum = Forum.find(params[:forum_id])
@posts = @forum.posts.includes(:user => :role).where('id = ? OR parent_post_id =?',params[:id], params[:id])
end
页面呈现,但我无法通过查看控制台来判断它是否实际上减少了查询数量。控制台似乎对CACHE的查询数量略有减少,但加载调用保持稳定。我这样做了吗?
答案 0 :(得分:0)
是的,我想是的,如果热切加载成功,查询计数将会减少。 如果您使用的是MYsql,我建议您使用“query_reviewer”。 (https://github.com/dsboulder/query_reviewer)它会显示您打开网页时执行的查询次数。