【问题标题】:How to define has_many through via through association in rails如何通过rails中的关联定义has_many
【发布时间】:2012-08-23 06:00:19
【问题描述】:

考虑我有名为 A、B、C、D 的导轨模型,具有以下关系。

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

现在,定义以下关联的 rails 方式应该是什么?

A has_many D via C

【问题讨论】:

    标签: ruby-on-rails associations model-associations


    【解决方案1】:
    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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-27
      • 2014-07-06
      • 1970-01-01
      • 1970-01-01
      • 2013-05-06
      • 1970-01-01
      相关资源
      最近更新 更多