1 namespace :db do
2 desc "Fill database with sample videos"
3 task :populate => :environment do
4 require 'faker'
5 Rake::Task['db:reset'].invoke
6 100.times do |n|
7 headline = Faker::Lorem.sentence(3)
8 video = Faker::Lorem.words(5)
9 Video.create!(:headline => headline,
10 :video => video)
11 end
12 end
13 end我目前在lib/ task /sample_data.rb中有这个rake任务
运行rake db:populate时,我收到错误Don't know how to build task 'db:populate'。我该如何解决这个问题呢?
注:我是Rails/Ruby的新手。我使用的是Rails3。
发布于 2011-03-17 12:06:48
尝试将文件重命名为sample_data.rake。
我将您的代码放在lib/tasks中名为testomatic.rake的文件中,从而使您的示例正常工作(将任务的内部部分替换为p语句)。
发布于 2011-04-14 03:14:52
我也有这个问题。在Finder中,文件名是sample_data.rake,但在单击文件的"Get Info“时,我发现完整的文件名是sample_data.rake.erb --请确保这不是您的问题。
发布于 2013-10-28 05:49:22
Noobie在这里遇到了同样的问题-我的分支的名称与我合并分支时的想法不同,所以它恢复到我创建lib/tasks/sample_data.rake文件之前的旧文件。
只需返回并重新运行具有正确名称的git merge,并对Heroku执行push命令,它就能正常工作。
https://stackoverflow.com/questions/5334520
复制相似问题