首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

Rails应用性能优化(3)

2012-08-29 
Rails应用性能优化(三)源码优化: 数据库优化:1)N+1 查询问题--立即加载一层嵌套:查询添加 Post.find(:all,

Rails应用性能优化(三)

源码优化: 数据库优化:1)N+1 查询问题--立即加载       一层嵌套:查询添加 Post.find(:all, :include=>[:category])                               <%=p.category.name%>             2) N+1 查询问题--嵌套的立即加载 两层嵌套:查询添加 Post.find(:all, :include=>{ :category=>[],:author=>{ :image=>[]}} )  <%=p.category.name%><%=image_tag p.author.image.public_filename %>  3) N+1 查询问题--间接的立即加载           查询添加 User.find(5, :include=>{:posts=>[:user]})   <%@user = User.find(5)    @user.posts.each do |p|%>         <%=render :partial=>'posts/summary',  :locals=>:post=>p     %> <%end%> 当然,决定查询的数量需要对 posts/summary partial 有所了解。清单 8 中显示了这个 partial。清单 8. 间接立即加载 partial: posts/_summary.html.erb   <h1><%=post.user.name%></h1>

热点排行