namespace :db do desc "Load sample data" task :dataload => :environment do load File.join(RAILS_ROOT, 'db', 'data', 'dataload.rb') end desc "Drop and recreate the database" task :nuke => :environment do config = ActiveRecord::Base.configurations[RAILS_ENV] ActiveRecord::Base.connection.execute "DROP DATABASE #{config["database"]}" ActiveRecord::Base.connection.execute "CREATE DATABASE #{config["database"]}" ActiveRecord::Base.clear_active_connections! end desc "Reset the database (nuke, migrate, load data)" task :reset => %w[environment db:nuke db:migrate db:dataload] end Rake::Task["db:test:prepare"].enhance do Rake::Task["db:dataload"].invoke end