我使用的是Rails 4,我想知道如何根据他现有的所有堆栈获取用户的独特服务。基本上是:
User hasMany Stacks
Stacks hasMany Services
我的尝试:
stacks = user.stacks
services = []
stacks.each do |stack|
services << stack.services
end
这样工作正常,但是services
是一个数组,我失去了所有漂亮的ActiveRecord函数,例如order。
我无法再订购services
集合,因为它是一个数组,而不是一个ActiveRecord :: Relation。
有什么建议吗?
答案 0 :(得分:1)
尝试将此添加到User
模型并访问user_services
has_many :user_services, :through => :stacks, :source => :services