Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 同时在两个对象上循环_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 同时在两个对象上循环

Ruby on rails 同时在两个对象上循环,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想创建一个如下表 专栏1 专栏2 独立柱 A. 1. i1 B 2. i2 C 3. i3 i4 i5 其中第1列和第2列是来自变量@a的数据,独立列具有来自@b的数据。我希望它们出现在同一个表中,因此我不能将它们分别作为@a.each和@b.each循环 有什么想法可以帮我吗。您可以在跟踪索引的同时迭代第一个索引,然后从第二个索引中获取值: @a.each_with_index do |a, index| @b[index] # may be nil end 但是,这意味着@b应该

我想创建一个如下表


专栏1
专栏2
独立柱
A.
1.
i1
B
2.
i2
C
3.
i3
i4
i5
其中第1列和第2列是来自变量
@a
的数据,
独立列
具有来自
@b
的数据。我希望它们出现在同一个表中,因此我不能将它们分别作为
@a.each
@b.each
循环


有什么想法可以帮我吗。

您可以在跟踪索引的同时迭代第一个索引,然后从第二个索引中获取值:

@a.each_with_index do |a, index|
  @b[index] # may be nil
end
但是,这意味着
@b
应该有一个
[]
操作符,这是任何数组的情况,但可能不是链表的情况,具体取决于实现

最好的方法是将您的集合(
@a
@b
)合并在一起,这样您就可以只迭代一个集合并获得两个值。

您可以使用:


@a
@b
是什么样子的?第1列
和第1列
之间有什么区别?你有没有尝试合并
@a
@b
@a.zip(@b)。每个{a,b |}
@a和@b的大小都不一样是我的问题
@a.zip(@b).each do |a, b|
end