基本的に、私のウェブアプリケーションには、データベースに多数の初期データをシードすることです。たとえば、すべてが1つのproduct_typeを持つ製品のリストがあります。データをシードする際にIDを見つける
私seeds.rbは、次のコードを持っています
ProductType.delete_all
ProductType.create(:name => 'Furniture')
Product.delete_all
Product.create(:name => 'Chair', :type_id => ProductType.first.id, :packaging => '2 for $20', :price_per => 0.1, :default_packaging_number => 2)
は今、私の問題はProductType.first.idは単なるプレースホルダであるということです。問題は、私がこれを行うとき、私ははっきりIDではありません膨大な数(70247318042560)に戻ってしまうことがあり
:type_id => ProductType.where(:name => "Furniture").id
:私が本当にやりたいことのようなものを置くことです。私はどこ文の末尾に.object_idを使用すると、コンソールにも警告
warning Object#id will be deprecated; use Object#object_id
を返し、それはまだ同じ大と間違った番号ことを返します。
家具ProductTypeのIDをデータベースから取得するにはどうすればよいですか?アクセス権を変更する必要がありますか?
方法でProductType 'について。:(:name => "Furniture")。first.id'? – user482594