2013-03-29 19 views
0

我在寫一個複雜的活動記錄查詢來從多個表中獲取數據,查詢有連接,選擇,排序,組,選擇where。Rails中活動記錄查詢的查找器方法的序列

  @posts = Post.published.paginate(:order => 'popularity desc, id', 
              :joins => [:comments, :images, :updates, :user], 
              :conditions => conditions, 
              :group => "posts.id", 
              :select => "posts.id*, 
              :per_page => 10, 
              :page => params[:page]) 

我想知道根據標準應該是哪裏,連接等順序,並最大限度地提高查詢性能。如果有人可以寫一個查詢來解釋這個真的很棒的序列

@posts = Post.published.joins(:comments, :images, :updates, :user).where(.... 

回答

0

就我所知,序列並不重要。

一個例子是:

@posts = Post.published.select('posts.id'). 
    joins(:comments, :images, :updates, :user). 
    where('users.email = ?', '[email protected]'). 
    group('posts.id')