Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 编写嵌套关联_Ruby On Rails_Ruby On Rails 3.2_Rails Activerecord - Fatal编程技术网

Ruby on rails 编写嵌套关联

Ruby on rails 编写嵌套关联,ruby-on-rails,ruby-on-rails-3.2,rails-activerecord,Ruby On Rails,Ruby On Rails 3.2,Rails Activerecord,从一个组织表中,另外两个表悬挂着所属的,并且有许多关联,它们都有组织id键 因此,为了快速加载,我写了以下内容: @organization = Organization.includes(:population_summaries, :key_performance_inds).find(params[:id]) 这应该行得通 但现在我有第三张桌子要放进去关键绩效时间间隔,其中包含用作外键的kpi\u id字段,用于指向关键绩效int表。我无法将该部分写入并添加到我急切的加载部分。我该怎

从一个组织表中,另外两个表悬挂着
所属的
,并且
有许多关联,它们都有组织id

因此,为了快速加载,我写了以下内容:

@organization = Organization.includes(:population_summaries, :key_performance_inds).find(params[:id]) 
这应该行得通


但现在我有第三张桌子要放进去关键绩效时间间隔,其中包含用作外键的
kpi\u id
字段,用于指向关键绩效int表。我无法将该部分写入并添加到我急切的加载部分。我该怎么加上那个

要包含嵌套关联,可以将其作为哈希写入:

@organization = Organization.includes([:population_summaries, key_performance_inds:  :key_performance_interval]).find(params[:id])

您可以在第12.1.2节中阅读,谢谢,不知道我写这篇文章时为什么RubyMine会说“额外调用参数”。您是使用ruby 1.8还是1.9?如果您使用的是1.8,您可能必须使用旧式哈希。我使用的是1.9,那么“:”的位置如何。。。你的代码在右边的“key_performance_inds:”,如果我把冒号放在左边,比如“:key_performance_ind”?太棒了,现在RubyMine错误消失了。但我要学习的一个问题是:我们是否需要将它们全部排列起来?或者仅仅是具有“嵌套哈希”的方法?
#includes
方法只接受一个参数,这就是为什么需要将整个内容作为数组传入的原因。