Ruby on rails 当内部抛出错误时,如何使循环完成?
如果我有一个循环,并且在循环中的某个地方,我会得到一个异常或错误。如何保持循环Ruby on rails 当内部抛出错误时,如何使循环完成?,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,如果我有一个循环,并且在循环中的某个地方,我会得到一个异常或错误。如何保持循环 Foos.each do |foo| .... # Random error/exception thrown here .... end 我是否应该在循环中设置rescue块?这会使循环结束吗?或者有更好的替代方法吗?您可以使用添加开始/救援块。我不确定是否有其他方法可以在出现错误时保持循环 4.times do |i| begin raise if i == 2 puts i
Foos.each do |foo|
....
# Random error/exception thrown here
....
end
我是否应该在循环中设置
rescue
块?这会使循环结束吗?或者有更好的替代方法吗?您可以使用添加开始/救援
块。我不确定是否有其他方法可以在出现错误时保持循环
4.times do |i|
begin
raise if i == 2
puts i
rescue
puts "an error happened but I'm not done yet."
end
end
# 0
# 1
# an error happened but I'm not done yet.
# 3
#=> 4
因为另一方面你的标题要求一种结束循环的方法。如果希望循环在
救援
中结束,可以使用中断
4.times do |i|
begin
raise if i == 2
puts i
rescue
puts "an error happened and I'm done."
break
end
end
# 0
# 1
# an error happened and I'm done.
#=> nil