【发布时间】:2011-11-08 08:44:12
【问题描述】:
只是一个简单的问题。我在文档中找不到它。
如果我使用标准的begin ... rescue,如何将所有错误或堆栈跟踪打印到救援中?
例如:
begin
do x
rescue
puts errors
end
有什么想法吗?
【问题讨论】:
标签: ruby-on-rails ruby exception
只是一个简单的问题。我在文档中找不到它。
如果我使用标准的begin ... rescue,如何将所有错误或堆栈跟踪打印到救援中?
例如:
begin
do x
rescue
puts errors
end
有什么想法吗?
【问题讨论】:
标签: ruby-on-rails ruby exception
我知道至少有两种方法可以得到错误。第一个是使用全局变量:$!始终设置为发生的最后一个错误。第二种是在救援时显式捕获错误:
begin
# do something that fails...
rescue => error
# error and $! are equivalent here
end
任何一个都可以让您检查或打印回溯使用:
$!.backtrace # => array of backtrace steps
error.backtrace # => same error
【讨论】: