你能在rescue修饰符中放多个赋值吗?

时间:2012-10-12 16:28:24

标签: ruby variable-assignment modifier

假设我有这个:

item_one = Object.find(1) rescue item_one, value = [Object.first, true]

这实际上不起作用。它返回:

syntax error, unexpected '=', expecting $end

有谁知道如何在rescue修饰符中语法上放置多个赋值?

旁注:

鲍里斯建议以这种方式设置救援声明:

begin
  i1 = Object.find 1
rescue NoMethodError
  i1, v = Object.first, true 
end

1 个答案:

答案 0 :(得分:2)

使用括号。所以你正在从任务中解救:

(item_one = Object.find(1)) rescue item_one, value = [Object.first, true]