Rails STI has_many 一种类型的 STI 儿童

Rails STI has_many STI children of one type

我有这样的结构:

A​​持有一个B(STI)持有多个C(STI)

如何告诉B1(B的子class)它拥有多个C1(C的子class) 如果可能的话。 (B1只能包含C1,不能包含其他C子class)

谢谢!

我最终找到了解决方案:

我需要像这样在 has_many 中指定 class_name

has_many :C, :foreign_key => :parent_id,  class_name: 'C::C1'