0

我正试图从作业中可能发生的错误中解救出来。我可以从 nil 中解救出来,但如果我想采取一些行动怎么办?

例如,这很好用:

new_object = Product.find_by_id(412) rescue nil

但是,我想打印一些东西并采取另一个行动。那么我将如何让这样的事情起作用:

new_object = Product.find_by_id(412) rescue nil
                                        puts "what happened"
                                        next
                                     end
4

2 回答 2

2

使用以下

begin
  new_object = Product.find_by_id(412)
rescue
  new_object = nil
  puts 'what happened'
  next
end
于 2013-02-25T01:59:17.653 回答
0
begin
  foo = Product.find_by_id!(412)
rescue ActiveRecord::RecordNotFound
  logger.warn "Could not find foo" 
end
于 2013-02-25T02:02:29.687 回答