我用 'rubyoverflow' 創業板扶手:異常處理
begin
puts "=== 1 ==="
qt = Questions.retrieve_by_tag(tag).questions
puts "=== 2 ==="
rescue
puts "=== 3 ==="
end
但有時我得到的控制檯上的錯誤:
在行843列4
無法解析YAMLC:/Ruby192/lib/ruby/1.9.1/psych.rb:148:在
parse' C:/Ruby192/lib/ruby/1.9.1/psych.rb:148:in
parse_stream'... rubyoverflow (1.0.1)lib/rubyoverflow.rb:86:inrequest' ... C:/Ruby192/lib/ruby/1.9.1/webrick/server.rb:183:in
block in start_thread'
但問題不是關於創業板的錯誤,但對異常處理。我在控制檯中只得到線:
puts "=== 1 ==="
而不是線
puts "=== 2 ==="
puts "=== 3 ==="
爲什麼呢?
我怎樣才能恢復我的程序的esecution如果行
qt = Questions.retrieve_by_tag(tag).questions
失敗?
這不是它。注意它是在另一個線程上拋出的異常:'/webrick/server.rb:295:in'start_thread'中的塊。我遇到了與rsolr Sunspot相同的問題。它會在模型保存上創建一個回調,並且似乎無法捕捉它!我試圖捕獲特定的異常'Errno :: ECONNREFUSED',還有'Exception',但它仍然失敗。堆棧跟蹤不會列出我的任何代碼。這是所有的框架代碼,從Webbrick下降到rsolr。 – Chloe 2014-03-28 03:45:53