【发布时间】:2019-03-01 16:55:23
【问题描述】:
我想要一段干净的代码,但我觉得这感觉很笨重。
有没有更好的方法来做到这一点?
User.try(:profile).try(:settings).try(:card).try(:options)
如果我消除 try 方法,我会得到一个 nil 方法错误。
是否还有另一段代码可以执行以下操作:
User.try(:profile,:settings, :card, :options)
【问题讨论】:
-
顺便说一句,
User.try(:profile,:settings, :card, :options)不起作用的原因是您可以使用 try 提供方法参数和块。上面的代码尝试做User.profile(:settings, :card, :options)。
标签: ruby-on-rails ruby activesupport