2015-02-17 103 views
1

我正在使用Rails 4,我想知道如何根據他所有的現有堆棧來抓取用戶的唯一服務。基本上是:抓取關係的關係對象

User hasMany Stacks 
Stacks hasMany Services 

我嘗試:

stacks = user.stacks 
services = [] 
stacks.each do |stack| 
    services << stack.services 
end 

而且這工作得很好,但是services是一個數組,我失去所有的漂亮的ActiveRecord的功能,如訂單。

我不能再訂購services集合,因爲它是一個Array而不是ActiveRecord :: Relation。

有什麼建議嗎?

回答

1

嘗試增加這User模型和訪問user_services

has_many :user_services, :through => :stacks, :source => :services 
+0

謝謝,就像一個魅力! – sergserg 2015-02-17 23:45:55