В моем Rails-приложении у меня есть класс Bar
и контроллер FooController
.
class Bar
attr_accessor :id
end
class FooController < ApplicationController
def index
@rows = {}
bar = Bar.new
bar.id = 1
@rows[0] = bar
render "index"
end
end
В представлении я хотел бы сделать так:
<table>
<% @rows.each do |bar| %>
<tr>
<td><%= bar.id %></td>
</tr>
<% end %>
</table>
Но он выдаст ошибку
undefined method `id' for [0, #<Bar:0x00007fc65db33320 @id=1>]:Array
Если я отобразлю так:
<%= @rows %>
необработанные данные массива @rows
будут отображаться как:
{0=>#<Bar:0x00007fc65db33320 @id="1">}
Как визуализировать элементы один за другим?