1
我在我的應用程序中的以下關聯:優化軌查詢和協會
# user.rb
has_many :posts, :dependent => :destroy
has_many :likes, :dependent => :destroy
# post.rb
belongs_to :user
has_many :likes, :dependent => :destroy
# like.rb
belongs_to :user
belongs_to :post
當我試圖訪問所有用戶喜歡我用下面的循環
@user = User.find(params[:id])
@posts_user_likes = []
@user.likes.each do |like| # TODO optimize
@posts_user_likes << Post.find_by_id(like.post_id)
end
職位
但這似乎效率很低。
改善我的代碼的最好方法是什麼,無論是使用不同的關聯還是不同的循環方式?
omg,我不能相信贏得其他答案。 – 2012-01-31 00:09:43