我的 Rails 3 应用程序中有一个文章模型。文章模型有一个称为类别的列,它是使用新表单视图中的选择框设置的。(这是一个选择框,因为选项永远不会改变,而且只有四个)。
我拥有的索引视图代码如下:
<% @articles.category.each do |article| %>
<%= article.category %>
<% @articles.each do |article| %>
<tr>
<td><%= article.title %></td>
<td><%= article.author %></td>
<td><%= article.category %></td>
<td><%= link_to 'Show', article %></td>
<td><%= link_to 'Destroy', article, confirm: 'Are you sure?', method: :delete %></td>
</tr>
<% end %>
<% end %>
我在控制器中按类别分组:
@articles = Article.group(:category).order('title ASC')
但是,这会导致指向以下行的异常<% @articles.category.each do |article| %>
。
实现以下目标的最整洁(从我的视图代码中)方法是什么:
- 第一类
- 第1条
- 第二条
- 第 2 类
- 第五条
- 第 3 类
- 第八条
所以每篇文章都列在它的类别下。