例を挙げましょう。
2つのモデルとしてCategoryとProductがあり、それらの間の多対多の関係を指定/処理する別のChosenProductがあるとします。現在、特定のカテゴリがあり、これらのカテゴリをループで繰り返して、対応する製品を取得しています。ビューでこれらの複数の製品オブジェクトにアクセスするにはどうすればよいですか?
私はRailsとMVCを初めて使用するので、今のところ、自分のビュー自体でこのタスクを実行しています。しかし、これは正しい方法ではないと思います。これにどのようにアプローチすればよいですか?
求められたとおりにビューコードを追加しています。これでうまくいきました。しかし、私はそれがきれいだとは思いません。
<ul>
<% @categories.each do |category| %>
<li>
<%= image_submit_tag("add.png", :height => "20", :width => '20', :name=>"add_product_to_#{category.id}", :id=>"add_product_to_#{category.id}" ) %>
<%= category.category_name %>
<% @chosen_products = category.chosen_products %>
<% @chosen_products.each do |chosen_product| %>
<% @products = Product.where(:id => chosen_product.product_id).all %>
<% @products.each do |product| %>
<ul>
<li><%= product.product_name %>
<ul>
<li><%= image_tag("#{product.product_image_url}", :size => "200x200", :alt => "Can not load image!") %></li>
<li><%= product.product_image_url %></li>
</ul>
</li>
</ul>
<% end %>
<% end %>
<% end %>
</li>
</ul>