2016-06-21 11 views
1

有沒有任何方法可以將救援塊中的錯誤消息作爲字符串訪問?例如:在救援塊內訪問錯誤消息

def foo 
    raise RuntimeError, "This is an error" 
end 

def bar 
    begin 
    foo 
    rescue RuntimeError 
    puts "Rescued" 
    end 
end 

bar 

有什麼辦法獲得來自:在搶救塊訪問"This is an error"?事情是這樣的:

... 
rescue RuntimeError 
    puts <error-message> 
end 
... 

回答

3

您需要

def foo 
    raise RuntimeError, "This is an error" 
end 

def bar 
    begin 
    foo 
    rescue RuntimeError => ex 
    puts "Rescued #{ex.message}" 
    end 
end 
+0

指定一個變量來存儲錯誤你也可以使用'$'全球救援塊中獲得異常對象! – zetetic