Ruby Iterator.each:为什么这样做有效

Ruby Iterator.each:为什么这样做有效,ruby,syntax,ruby-on-rails-3.1,Ruby,Syntax,Ruby On Rails 3.1,我在为工作重构一个项目中的一些代码时,遇到了一些奇怪的语法。我确认它自第一次创建以来就一直在文件中,并且正在调用代码位 worksheet.each 1 do |row| Dashboard::LocalizedMessagingField.create({blah blah blah}) end 当我在irb中运行类似于以下内容的程序时,它会对每个程序上的0个参数抱怨1 [1,2,3].each 1 do |i| puts i end 为什么它在RoR应用程序中工作?以前有人见过

我在为工作重构一个项目中的一些代码时,遇到了一些奇怪的语法。我确认它自第一次创建以来就一直在文件中,并且正在调用代码位

worksheet.each 1 do |row|
  Dashboard::LocalizedMessagingField.create({blah blah blah})
end
当我在irb中运行类似于以下内容的程序时,它会对每个程序上的0个参数抱怨1

[1,2,3].each 1 do |i|
  puts i
end 

为什么它在RoR应用程序中工作?以前有人见过这样的东西吗?

经过一番挖掘,我找到了答案。我们安装了电子表格gem,它提供了一个each方法,该方法使用一个参数跳过电子表格的前n行

def each skip=dimensions[0], &block
  skip.upto(dimensions[1] - 1) do |idx|
    block.call row(idx)
  end
end

经过一番挖掘,我找到了答案。我们安装了电子表格gem,它提供了一个each方法,该方法使用一个参数跳过电子表格的前n行

def each skip=dimensions[0], &block
  skip.upto(dimensions[1] - 1) do |idx|
    block.call row(idx)
  end
end

你能用你在编辑中提供的答案回答这个问题并接受它吗?我没有足够的声誉来这么做。@solipsicle:你不需要任何声誉来编辑你自己的问题或发布答案(对任何人的问题)。你现在应该可以了,solipsicle。等待时间很短,但现在已经结束。请用您在编辑中提供的答案回答这个问题,然后接受它,好吗?我没有足够的声誉来这么做。@solipsicle:编辑您自己的问题或发布答案(任何人的问题)不需要任何声誉。您现在应该可以,solipsicle。等待时间很短,但现在结束了。