我正在使用ruby gem,它接收可变数量的参数(具体来说,它是axlsx gem)。
我正在使用column_width
函数,定义为:
def column_widths(*widths)
widths.each_with_index do |value, index|
next if value == nil
Axlsx::validate_unsigned_numeric(value) unless value == nil
find_or_create_column_info(index).width = value
end
end
我有一个动态的宽度需要设置(因为列数不同),所以我尝试创建一个宽度数组并将其传入,但它将数组视为一个参数。
如何将数组作为参数列表传递?
编辑:
实际错误是:
无效数据[30,13,20,13,20,13,20,13,10,10,10,13,20,10] 对于无效的列宽。必须是[Fixnum,Integer,Float]
答案 0 :(得分:1)
您可以在方法定义和方法调用中使用splat。这应该有效:
column_widths(*array_of_widths)