简体   繁体   English

如何通过Rails中的via关联定义has_many

[英]How to define has_many through via through association in rails

consider i have rails models named A, B, C, D with following relationship. 考虑我有一个具有以下关系的名为A,B,C,D的导轨模型。

A has_many B
B belongs_to C
A has_many C via B
C belongs_to D

Now, what should be the rails way to define below association ? 现在,应该是什么轨的方式来定义下面的关联?

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM