ためのシードタスクをI次のタスクがあります。デシベルの実行:開発
namespace :db do
desc "Drop, create, migrate, seed the database and prepare the test database for rspec"
task :reset_db => :environment do
puts "Environment Check: Rails Environment = #{Rails.env}"
Rake::Task['db:drop'].invoke
Rake::Task['db:create'].invoke
Rake::Task['db:migrate'].invoke
#Rake::Task['db:fixtures:load'].invoke
Rake::Task['db:test:prepare'].invoke
puts 'Seeding Database..'
Rake::Task['db:seed'].invoke
end
end
このタスクでは、最後のdb:seed
行まで正常に動作しますが。
これは、test
環境を使用しているように見え、そこにデータを作成し、他のすべてのタスクはdevelopment
環境で実行します。コマンドラインでrake db:seed
を実行すると、development
環境で正しく動作します。
どうすればtest
環境で実行されないようにすることができますか?
'db:test:prepare'は' test'データベースを準備していませんか? – Frost
おっと、私はrails_envも同様に設定していることを知らなかった。私はそれを選ぶことができるように答えてください。 – Spyros