【发布时间】:2019-10-25 17:54:40
【问题描述】:
假设,在一个 Rails 应用程序(使用 postgresql)上,我有这个数据库,它在 work_steps 和 sub_assemblies / 部分之间具有多态关联:
Part.rb
belongs_to :sub_assembly, optional: true
has_many :work_steps, as: :component
belongs_to :site
belongs_to :car
子程序集.rb
has_many :work_steps, as: :component
has_many :parts
work_step.rb
belongs_to :component, polymorphic: true
现在,我想查询我的数据库:我想要一个使用特定站点数组和特定汽车数组过滤的所有工作步骤的列表。 例如,链接到属于站点 A 和汽车 X 和 Z 的零件的所有工作步骤。
由于与 sub_assemblies 的多态关联以及链接到部件表的同一个表,我不知道该怎么做。
最后,我需要一个 ActiveRecord 关系。你会如何简单地做到这一点?我尝试了很多东西,但都没有成功。
有人帮我吗?
提前谢谢你。
【问题讨论】:
标签: ruby-on-rails activerecord polymorphic-associations