2013-10-09 2 views
0

У меня есть Деталь Леса, который имеет приблизительно 200+ предметов, которые предварительно исправить.Заполнение леса через семена

Таким образом, добавление их вручную очень болезненно.

Могу ли я заполнить Леса в моем файле семени, а затем db:seed на производстве?

Я не знаю, правильный метод, но я думаю, что это что-то вроде этого:

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

Я ищу решение, которое будет семя эшафот моего предмета ...

ответ

1

Вы должны сделайте это, но вам не нужно присваивать его переменной items.

Вам просто нужно добавить в файл seed.rb код с вашими товарами. Я добавил delete_all раньше, чтобы избежать создания повторяющихся элементов.

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

И тогда вам нужно будет засеять вашу базу данных граблями: db seed.

2

Попробуйте использовать следующий код, добавив оставшиеся элементы массива в файл db/seeds.rb и запустите команду rake db: seed. Это генерирует ожидаемые записи в таблице элементов.

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

Item.find_or_create_by_name (: имя => пункт)

конец

удачи.

Смежные вопросы