Ruby on rails 3.2 检查rails中是否存在长关联链

Ruby on rails 3.2 检查rails中是否存在长关联链,ruby-on-rails-3.2,rails-activerecord,Ruby On Rails 3.2,Rails Activerecord,我正在写一个动作,涉及一长串的关联,比如: @featured\u image=@content\u page.content\u tree\u item.children.first.featured\u images.first 如果这些关联不存在,我想获得@featured_image=nil。我可以做到: @featured\u image=@content\u page.content\u tree\u item.children.first.featured\u images.fi

我正在写一个动作,涉及一长串的关联,比如:

@featured\u image=@content\u page.content\u tree\u item.children.first.featured\u images.first
如果这些关联不存在,我想获得
@featured_image=nil
。我可以做到:

@featured\u image=@content\u page.content\u tree\u item.children.first.featured\u images.first rescue nil
但是,在
救援行动中覆盖整个链条似乎有点不切实际,可能会掩盖其他问题。是否有一种“rails方式”,或者至少是更好的方式,只捕获不存在的关联?

使用或
试试

这就是说,总的来说,像这样的火车失事通常是一个信号,表明高层对底层的了解太多,一些重构或委派可能是正确的。

使用或
试试


这就是说,总的来说,像这样的火车失事通常是一个信号,表明高层对底层的了解太多,一些重构或委派可能是正确的。

是的,可能是这样。无论如何,谢谢你给我指出了正确的方向。是的,也许吧。无论如何,谢谢你给我指明了正确的方向。