0

Rails newbはこちら。Product および ProductCategory モデルがあり、製品は製品カテゴリに属し、製品カテゴリには多くの製品があります。私のシードファイル:

product_categories = [
    {:category => "Arts", :category_type => "physical" },
    {:category => "Books", :category_type => "physical" },
    {:category => "Diy & Craft", :category_type => "physical" },
    {:category => "Ebook", :category_type => "digital" },
    {:category => "Gadgets", :category_type => "physical" },
        etc.

]

私の製品で->新しい方法

@categories = ProductCategory.where("category_type = ?", params[:category_type])
@product = @categories.products.new(params[:product])

このエラーが発生します -> # ActiveRecord::Relation:0x007fb34b1010c0 の undefined method `products' > @categories に行が 1 つしか含まれていないためだとわかっていますが、どうにかして関係を作成したいと考えています。次に、ビューファイルでカテゴリを取得して選択フィールドに表示したい

<%= collection_select :product, :category_id, @categories, :id, :name, @product.category_id %>

これを行う最善の方法は何ですか?ありがとう。

4

1 に答える 1