How to build task 'db:populate'

17,413

Solution 1

Try renaming the file to sample_data.rake.

I was able to get your example working (replacing the internals of the task with a p statement) by putting your code in a file called testomatic.rake in lib/tasks.

Solution 2

I also had this problem. In Finder, the file name was sample_data.rake, but upon clicking "Get Info" for the file, I discovered the full file name was sample_data.rake.erb -- ensure that's not your problem.

Solution 3

Noobie with the same problem here - my branch was named differently than what I thought when I merged branches, so it reverted back to the old files before I had created my lib/tasks/sample_data.rake file.

Simply going back and re-running git merge with the correct name and pushing to Heroku got it to work.

Share:
17,413

Related videos on Youtube

Teej
Author by

Teej

PHP / Ruby Developer experienced in various php frame works and currently working with Ruby on Rails and ReactJS Javascript Developer, including working knowledge in jQuery and VueJS. I've recently been working with node.js and AngularJS Have working knowledge of Adobe Photoshop and Illustrator.

Updated on June 04, 2022

Comments

  • Teej
    Teej almost 2 years
      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
    

    I currently have this rake task in lib/tasks/sample_data.rb

    When running rake db:populate I get the error, Don't know how to build task 'db:populate'. How do I get around this?

    Notes: I am a newbie in Rails/Ruby. I am using Rails 3.

  • David Tuite
    David Tuite almost 13 years
    Just did the same thing myself! It's always the simple things that get me.