我有4款车型,A,B,C和d有效的连接查询 - 它可以使用ActiveRecord
做class A < ActiveRecord::Base
has_many :B
has_many :C, :through => :B
end
class B < ActiveRecord::Base
belongs_to :A
has_many :C
has_many :D, :through => :C
end
class C < ActiveRecord::Base
belongs_to :B
end
class D < ActiveRecord::Base
belongs_to :C
end
我有一个非常幼稚的做法,这是非常明显的...
<% A.B.each do |b| %>
<%= b.number %>
<% b.C.each do |c| %>
<%= c.name %>
<% end %>
<% end %>
获得所有C for A的最佳方式是什么? 什么是最好的方式获得所有D的A?
我想所有的“C”使用ORDER_BY与“created_at”价值条款,而不是通过迭代B.
可能是我错过了一些ActiveRecord的魔力?
我很感激任何帮助。
因为通过B A的使用C的关系,我也可以做A.C直接吧? – Atarang 2012-01-10 04:36:01