0

約 200 以上のアイテムが事前修正されているアイテムの足場があります。

したがって、それらを手動で追加するのは本当に面倒です。

シード ファイルに Scaffold を配置してからdb:seed、本番環境に配置できますか?

適切な方法はわかりませんが、次のようなものだと思います。

items = Item.create([
    { name: 'css' }, 
    { name: 'css3' },
    { name: 'ruby' },
    { name: 'rails' },
    { name: 'python' },
    { name: 'html' }
    ])

アイテムの足場をシードするソリューションを探しています...

4

2 に答える 2

2

db/seeds.rb ファイルの配列に残りの項目を追加し、 rake db:seed コマンドを実行して、次のコードを試してください。これにより、 items テーブルに期待されるレコードが生成されます。

['css','rubyonrails','java'].each do |item|

Item.find_or_create_by_name(:name => item)

終わり

幸運を。

于 2013-10-09T12:38:33.217 に答える
1

そのようにする必要がありますが、items 変数に代入する必要はありません。

アイテムのコードをseed.rbファイルに追加するだけです。重複するアイテムの作成を避けるために、前に delete_all を追加しました。

Item.delete_all
Item.create([
{ name: 'css' }, 
{ name: 'css3' },
{ name: 'ruby' },
{ name: 'rails' },
{ name: 'python' },
{ name: 'html' }
])

そして、データベースに rake:db シードをシードする必要があります。

于 2013-10-09T11:38:10.493 に答える