在轨道中收集对象

时间:2016-05-10 03:57:19

标签: ruby-on-rails maps

我是新手,在收集铁轨中的物品时遇到了问题。 我有3个型号: 一个has_many B (B belongs_to A) B has_many C (c belongs_to B) 当我得到A时,如何从A中收集所有C,如下所示: A.Bs.Cs 请帮帮我!!!

1 个答案:

答案 0 :(得分:0)

有点简单,Rails完全支持!

class A < ActiveRecord::Base
  has_many :bs # has many B
  # The point here
  has_many :cs, through: :bs # has many C through B
end

class B < ActiveRecord::Base
  has_many :cs
  belongs_to :a
end

class C < ActiveRecord::Base
  belongs_to :c
end

例如,查询将是

A.find(1).cs

顺便说一句,你应该用更具描述性的信息修改你的问题,A, B, C有点令人困惑!