私は一般的に中級プログラマーであるrailsにかなり慣れていませんが、できる限り明確にするように努めます。
カテゴリというフィールドを所有するProductsのデータベーステーブルがあります。カテゴリには、Category1とCategory 2という2つの可能な値があります。目標は、すべての製品を取得し、カテゴリ別に整理されたHTMLで表示することです。私はこの仕事をすることができますが、もっと良い方法がなければならないことを私は知っています。
今の私の方法は、次のように製品を入手することです。
@category1_products = Product.all(conditions: { category: "Category1" })
@category2_products = Product.all(conditions: { category: "Category2" })
次に、次のようなデータを出力します。
<table>
<tr>
<td>Category1 Name</td>
<% @category1_products.each do |product| %>
<td><%= product.name %></td>
<td><%= product.description %></td>
<td><%= product.price %></td>
<% end %>
</tr>
<tr>
<td>Category2 Name</td>
<% @category2_products.each do |product| %>
<td><%= product.name %></td>
<td><%= product.description %></td>
<td><%= product.price %></td>
<% end %>
</tr>
</table>
これを単一のインスタンスを使用して実現したいと思います。すべての製品を一度に取得し、カテゴリ別にグループ化してから、一度に1つのカテゴリ(カテゴリ名を含む)をループして出力します。これは私にはかなり基本的な概念のように思えますが、頭を悩ませています。