如何在 Ruby 中将以下代码缩减为一行?
unless(current_facebook_user.nil?)
unless(current_facebook_user.client.nil?)
unless(current_facebook_user.client.default_params.nil?)
val = current_facebook_user.client.default_params
end
end
end
最佳答案
您可以使用自Rails 2.3.2 以来引入的active_support/core_ext/object/try.rb
中的try()
方法
val = current_facebook_user.try(:client).try(:default_params)
或者直接使用自Ruby 2.3.0以来引入的安全导航运算符
val = current_facebook_user&.client&.default_params
已记录 here
关于ruby-on-rails - 如何在 Ruby 中将以下代码缩减为一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6437883/