ここでレール初心者。特定のカテゴリに属するすべての製品のリストを表示したい。シンプルにしたかったので、各商品のカテゴリーは1つだけです。カテゴリを表示すると、製品はそこにありますが、次のように配列で表示されます。
名前:はんだ付け
カテゴリID:2
製品:[#<製品ID:5、タイトル: "Hacksaw"、説明: "Finetooth Hacksaw"、image_url:>> "hacksaw.jpg"、価格:#、created_at: "2012-07-14 >> 22:34 :07 "、updated_at:" 2012-07-17 22:18:14 "、category_id:2、category_name:nil>、#<製品ID:8、>>タイトル:"トーチ "、説明:"溶接トーチ "、 image_url: "torch.jpg"、価格:>>#、created_at: "2012-07-15 08:40:05"、>> updated_at: "2012-07-15 08:40:05"、category_id:2 category_name:nil>]
これはcategories/show.html.erbです:
<p>
<b>Products:</b>
<%= @category.products %></p>
</p>
そして、カテゴリコントローラー:
def show
@category = Category.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @category }
end
end
私がやりたいのは、製品名のリストを表示することですが、これをshow.html.erbで試してみると次のようになります。
<p>
<b>Products:</b>
<%= @category.product.name %></p>
</p>
...次のエラーが発生します:
#<Category:0x007ff03cd59e98>の未定義のメソッド `product'
何が悪いのかわかりません。