我正试图从分配中可能发生的故障中解脱出来。我可以毫无困难地从中解救出来,但是如果我想采取一些行动怎么办?

例如,这可以正常工作:

new_object = Product.find_by_id(412) rescue nil

但是,我想打印一些东西并采取其他措施。所以我将如何获得这样的效果:
new_object = Product.find_by_id(412) rescue nil
                                        puts "what happened"
                                        next
                                     end

最佳答案

使用以下

begin
  new_object = Product.find_by_id(412)
rescue
  new_object = nil
  puts 'what happened'
  next
end

07-27 23:45