我正在爲用戶配置文件創建最受歡迎的活動部分。我沒有任何困難通過user_id提取問題,但我無法通過相關整數進行排序:question.votes.size。這可能是一個簡單的問題,但如何排序然後將輸出限制爲3?我如何做到這一點,而不會滯後數據庫?最終會有很多票數被計算在內。這應該是一個named_scope?如何通過Ruby on Rails中的連接整數對數組進行排序?
@user_id = User.find_by_username(params[:username]).id
questions = Question.find(:all, :conditions => {:user_id => @user_id })
嘿湯姆!感謝您的迴應,它的工作。儘管如此,我怎麼能限制輸出呢?我想保持它3次。 – user250181 2010-06-19 06:59:26
如果你想在前三個問題,他們已經排序後,使其'@sorted_questions = @ user.questions.sort {| q1,q2 | q2.votes.length <=> q1.votes.length} .first(3)' – Chubas 2010-06-19 16:47:20