调用单个可选参数的方法,并保持默认的另一个可选参数

时间:2015-08-05 08:37:03

标签: ruby methods

我有一个方法:

def my_method(id,raise_error=true,validate=false)
  ...
end

如何仅使用第二个可选参数调用此方法?

我试过了:

my_method(20,,false)

使用选项哈希会不会更好?

更新

我也可以调用方法设置raise_error = false并将validate保留为默认值false

3 个答案:

答案 0 :(得分:4)

你不能这样做。相反,您可以使用关键字参数:

label

并仅使用def my_method(id, raise_error: true, validate: false) # ... end 参数调用它:

validate

答案 1 :(得分:2)

是的,你也可以在这里使用可选哈希:

以下是可能有帮助的称为层次结构的论点。

enter image description here

enter image description here

答案 2 :(得分:-1)

我建议将nil传递给第一个可选参数

$group