2014-03-04 64 views
0

我有一個問題模型。每個問題都可以有很多答案。和答案有一個數字的狀態ID。has_many按型號排序,另一張表

所以:我有:

class Question < ActiveRecord::Base 
has_many :answers, :order =>'status_cat_id' 

現在,答案都涉及到用戶,我想知道答案的順序是由status_is第一,然後通過用戶名。

所以,當我打電話時:@ question.answers我將得到按狀態排序,然後按用戶名排序的答案。

是否有可能通過模型​​實現該目標?

+0

':爲了=>'status_cat_id,user_id''應該工作 – mdesantis

+0

但用戶是另一個表! –

+1

您正在使用哪個版本的Rails?還有Answer模型是什麼樣的? – dmcnally

回答

1

答案是:

has_many :answers, :include => :user, :order =>'status_cat_id, users.name' 
+0

如果你願意的話,你也可以使用['named_scope'](http://stackoverflow.com/a/4765365/877472)。這樣,你可以在不需要它的情況下安全地調用'answers'關聯,而無需排序和急切的加載。 –