2014-08-30 43 views
2

我試圖輸出一個由模型上的特定類方法排序的JSON響應。我知道我可以通過實際的屬性進行排序,但我如何通過發送一個塊來排序。即:通過類方法的輸出排序rails

class Baker 
    has_many :meals 

    def this_week_cookies 
    self.meals.this_week.sum(:cookies_baked) 
    end 
end 

我想打電話給像

Baker.order {|麪包| baker.this_week_cookies}

輸出在視圖中領先,但我知道這是行不通的

回答

2

order方法寫一個SQL查詢,以便它不能使用像這樣的自定義方法。你需要使用紅寶石來做你想做的。

Baker.all.sort_by(&:this_week_cookies)