如何判断急切加载是否有效?

时间:2012-04-05 19:49:12

标签: ruby-on-rails eager-loading nested-resources

所以我有一个充满帖子的论坛帖子,我想急切地从帖子和那些用户角色加载用户,以减少数据库查询的总数(这似乎是最好的做事方式) )

(为了让事情变得更有趣,论坛和帖子是嵌套资源,如果这会产生差异)

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的查询数量略有减少,但加载调用保持稳定。我这样做了吗?

1 个答案:

答案 0 :(得分:0)

是的,我想是的,如果热切加载成功,查询计数将会减少。 如果您使用的是MYsql,我建议您使用“query_reviewer”。 (https://github.com/dsboulder/query_reviewer)它会显示您打开网页时执行的查询次数。