我有三个模型,程序 Subprograms1 Subprograms2
程序 -> has_many :subprograms1 , :subprograms2
子程序 1 -> has_and_belongs_to_many:程序
子程序 2 -> has_and_belongs_to_many:程序
我想获取所有 Subprograms1 和 Subprograms2 属于特定程序。
有没有可能在铁轨上。
提前致谢......
我有三个模型,程序 Subprograms1 Subprograms2
程序 -> has_many :subprograms1 , :subprograms2
子程序 1 -> has_and_belongs_to_many:程序
子程序 2 -> has_and_belongs_to_many:程序
我想获取所有 Subprograms1 和 Subprograms2 属于特定程序。
有没有可能在铁轨上。
提前致谢......
如果我理解正确,您应该能够通过访问 Programs 模型中的属性来访问所有 Subprograms1 和 Subprograms2
p = Programs.find(10)
sp1 = p.Subprograms1
sp2 = p.Subprograms2
如果您的数据中的结构是扁平的(其他子程序下方没有子程序),您可以使用 Active Record 的多态关联 来使用对多个其他表(不仅仅是一个)的引用,因此您可以设置从 Programs 到 Subprograms1和对 Subprograms2的引用并通过一个电话将它们全部检索出来。
如果数据中的结构很深(子程序可以有其他子程序),您应该将所有 3 个表放在一个表中,并使用嵌套集模型来管理数据树并检索与程序关联的所有(深层)子程序. 有许多 Ruby Gems可以帮助您实现这一目标。