考虑一个Rack应用。我只想在我们没有运行测试的情况下处理错误:
begin do_something if ENV[ 'RACK_ENV' ] != 'test' rescue => error handle_error error end end end
字符串这将生成syntax error, unexpected keyword_rescue (SyntaxError) rescue => error有办法做到这一点吗?
syntax error, unexpected keyword_rescue (SyntaxError) rescue => error
qlvxas9a1#
你能做这样的事吗?
begin do_something rescue => error if ENV["RACK_ENV"] == "test" raise error else handle_error error end end
字符串如果您没有进行测试,这将重新引发异常。
已编辑
正如@Max所指出的,你可以更简洁一点。
begin do_something rescue => error raise if ENV["RACK_ENV"] == "test" handle_error error end
型
5jvtdoz22#
你总是可以拯救它,然后要么处理或重新抛出取决于你的条件
begin do_something rescue => error if ENV['RACK_ENV'] != 'test' handle_error error else raise error end end
字符串
wz3gfoph3#
您必须引发错误,否则它会将错误更改为RuntimeError我的解决办法是
RuntimeError
begin do_something rescue => error handle_error error if ENV['RACK_ENV'] != 'test' raise error end
3条答案
按热度按时间qlvxas9a1#
你能做这样的事吗?
字符串
如果您没有进行测试,这将重新引发异常。
已编辑
正如@Max所指出的,你可以更简洁一点。
型
5jvtdoz22#
你总是可以拯救它,然后要么处理或重新抛出取决于你的条件
字符串
wz3gfoph3#
您必须引发错误,否则它会将错误更改为
RuntimeError
我的解决办法是
字符串