我正在使用 rails,我想知道我正在尝试做的事情是否可以使用 html 表。我正在迭代一个具有许多类别的对象。每个类别都有一本或多本书籍,每本书都作为“页面”属性。我想创建一个如下所示的表:
**category** **book name** **pages**
general book1 15
book2 20
book3 40
我相信这将对应于表中的一行,但最后两列显然有多行。我已经能够使用如下代码完成此操作:
<table>
<thead><th>category</th><th>book name</th><th>pages</th></thead>
<tbody>
<% category.each do |c| %>
<tr>
<td><%= c.name %></td>
<td>
<% c.books.each do |b| %>
<%= b.name %><br />
<% end %>
</td>
<td>
<% c.books.each do |b| %>
<%= b.pages %><br />
<% end %>
</td>
</tr>
<% end %>
</tbody>
</table>
如您所见,我在 c.books 上迭代了两次,这看起来很乱。有没有办法在只迭代一次 c.books 时做到这一点?我很想听听任何建议。