我有嵌套的has_many关联
项目有很多部分 部分有很多任务 任务有很多工作
是否有更好的方法来获得与项目相关的所有工作而不是
project.parts.each do |p|
p.tasks.each do |t|
t.jobs.each do |j|
...
end
end
end
由于
答案 0 :(得分:1)
您可以在has_many
模型中定义through
方法时,在#jobs
选项中添加Project
关联。
例如:
class Project < ActiveRecord::Base
has_many :parts
has_many :tasks, through: :parts
def jobs
jobs = []
tasks.each {|t| jobs << t.jobs }
jobs.flatten
end
end