如何定义has_many通过通过轨道关联通过
问题描述:
考虑我有轨道模型名为A,B,C,D与以下关系。如何定义has_many通过通过轨道关联通过
A has_many B
B belongs_to C
A has_many C via B
C belongs_to D
现在,应该如何定义下面的关联方式?
A has_many D via C
答
A has_many Bs
A has_many Cs, :through => Bs
(i.e B has_many Cs)
C belongs_to :D
A has_many Ds :through => Bs
SELECT COUNT(*) FROM `Ds` INNER JOIN `Cs` ON `Ds`.`id` = `Cs`.`D_id` INNER JOIN `Bs` ON `Cs`.`B_id` = `Bs`.`id` WHERE `Bs`.`A_i
你有测试此代码..不工作我最终 –
更新的问题..'B属于C' –