使用rake为rails引擎将样本数据添加到数据库

sv_*_*_in 2 rake yaml ruby-on-rails rails-engines

我正在通过创建分类引擎来尝试Rails引擎,用户可以在其中查看/发布/回复分类.

主应用程序包含用于用户身份验证和配置文件的代码,而我创建的引擎将处理分类功能.

现在我想为分类引擎添加一些示例数据到数据库.所以我在'vendor/plugins/classifieds/lib/tasks'中创建了一个名为'sample_classifieds_data.rake'的rake文件,并在'vendor/plugins/classifieds/lib/tasks/sample_classifieds_data'中添加了yml文件

rake文件的代码和示例yml文件可以在这里找到:http://gist.github.com/216776

现在的问题是,当我运行rake任务时,没有抛出任何错误,但是数据库中没有填充值.

有任何想法吗?BTW,它是开发环境,数据库是开发数据库.

我运行了一个类似的rake任务来填充数据库中的样本用户.rake文件'sample_data.rake'的位置位于'lib/tasks'中.

Dam*_*IEU 9

在rails edge中,您可以使用该rake db:seed功能将数据添加到基础.查看提交.

使用非常简单.

创建一个db/seeds.rb文件.
并将您想要的任何代码放入其中.

例如 :

Category.create!(:name => 'My Category')
Country.create!(:name => 'Cassoulet Land')
Run Code Online (Sandbox Code Playgroud)

当你想为你的数据库播种时,你可以做一个 rake db:seed

如果出于任何原因,您不希望使用edge(在生产环境中可以理解),您可以使用Seed Fu插件,这对您来说非常有用.