2012-10-10 36 views
12

Utworzyłem silnik Railsowy. Mam problem z użyciem polecenia seed, jeśli uruchomię program rake db: seed, otrzymam błąd: "niezainicjowana stała".Silnik szynowy/Jak używać nasion?

W silniku, mam seeds.rb:

Page.create(:title => 'Frontpage', :order => '1')

Wtedy w moim manekina aplikacji mam seeds.rb z

cms::Engine.load_seed 

(cms jest nazwa z silnik) - teraz mam błąd, że "niezainicjowana stała". Jak mogę odwołać się do stałej z fałszywej aplikacji?

+0

Jakiej wersji ruby ​​\ rails używasz? –

+0

Spróbuj również tego polecenia: "rake cms: db: seed". Gdzie cms - nazwa silnika. I spójrz na "rake-T" - to będzie powrót do ciebie pełna lista dostępnych poleceń. –

+0

Dzięki - próbowałem polecenia, nadal otrzymuję "niezainicjowaną stałą stronę". Wygenerowałem model "strona". – jakobk

Odpowiedz

22

Ok, rozumiem! - odpowiedź brzmi:

W silniku, dodać seeds.rb w folderze db, poprzedź nazwę aplikacji, aby każdy stały, tak jak poniżej:

Cms::Page.create(:title => 'Frontpage', :order => '1') 

W manekina aplikacji lub aplikacji, w której dodając swój silnik, dodać seeds.rb do folderu db z:

Cms::Engine.load_seed 

i uruchom:

rake db:seed 

w Termin glin.

+3

Czy jest jakiś sposób na wykonanie tego procesu automatycznie, zamiast ręcznego dodawania metody load_seed. Zastanawiam się nad przypadkiem użycia, w którym klej można dodawać i usuwać. –