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 %>
これを行う最善の方法は何ですか?ありがとう。