我有2组数据(数组),每个数组有5条记录,我想在2个相应的列中显示(在视图上)。
我似乎无法在同一个表中获得2个独立的数据位:
@data_a
@data_b
@data_a | @data_b
-----------------
a(1) | b(1)
a(2) | b(2)
a(3) | b(3)
a(4) | b(4)
a(5) | b(5)
答案 0 :(得分:1)
我猜你可以使用Array#zip
合并两个变量(数组)并获得一个主变量,包含每对值,这样你就可以迭代并得到第一个和第二个值,在需要的地方添加它们html结构并根据需要打印它们:
<% @data_a = %w[a(1) a(2) a(3) a(4) a(5)] %>
<% @data_b = %w[b(1) b(2) b(3) b(4) b(5)] %>
<table>
<thead>
<tr>
<th>@data_a</th>
<th>@data_b</th>
</tr>
</thead>
<tbody>
<% @data_a.zip(@data_b).each do |a, b| %>
<tr>
<td><%= a %></td>
<td><%= b %></td>
</tr>
<% end %>
</tbody>
</table>