答えて

2

は実際に

Item.new(params[:item] , { 
    :computer => Computer.new(params[:computer], { 
    :laptop => Laptop.new(params[:laptop]) 
    }) 
}) 

#newハッシュ属性を見込んとして解釈され、そして、あなたはそれを2つのハッシュを与えています。 1つの解決策は、Hash#mergeを使用してハッシュをマージすることです。

+0

「merge」は完璧に動作します... item = Item.new(params [:item] .merge({:computer => Computer.new(params [:computer] .merge({:laptop = Laptop.new(params [:laptop])})))})) ' – serpent403

関連する問題