【问题标题】:Outputting errors in a rescue (Ruby/Rails)在救援中输出错误(Ruby/Rails)
【发布时间】:2011-11-08 08:44:12
【问题描述】:

只是一个简单的问题。我在文档中找不到它。

如果我使用标准的begin ... rescue,如何将所有错误或堆栈跟踪打印到救援中?

例如:

begin 
    do x
rescue
    puts errors
end

有什么想法吗?

【问题讨论】:

    标签: ruby-on-rails ruby exception


    【解决方案1】:

    我知道至少有两种方法可以得到错误。第一个是使用全局变量:$!始终设置为发生的最后一个错误。第二种是在救援时显式捕获错误:

    begin
      # do something that fails...
    rescue => error
      # error and $! are equivalent here
    end
    

    任何一个都可以让您检查或打印回溯使用:

    $!.backtrace # => array of backtrace steps
    error.backtrace # => same error
    

    【讨论】:

      猜你喜欢
      • 2013-08-31
      • 2023-01-13
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多