我创建了一个Rails引擎。我在使用种子命令时遇到问题,如果我运行rake db:seed我得到错误:“uninitialized constant”。
在引擎中,我得到了种子.rb:
Page.create(:title => 'Frontpage', :order => '1')
然后在我的虚拟应用程序中,我得到了一个带有
的seeds.rbcms::Engine.load_seed
(cms是引擎的名称) - 我现在收到一个错误,那就是“未初始化的常量”。如何从虚拟应用程序引用常量?
答案 0 :(得分:24)
好的,明白了! - 答案是:
在引擎中,在db文件夹中添加seeds.rb,将应用名称添加到每个常量中,如下所示:
Cms::Page.create(:title => 'Frontpage', :order => '1')
在虚拟应用程序或添加引擎的应用程序中,将seeds.rb添加到db文件夹中:
Cms::Engine.load_seed
并运行:
rake db:seed
在终端。