私は Rails の初心者で、初めて Heroku Scheduler を使用して Rails アプリケーションで定期的なタスクを実行したいと考えています。チュートリアルでアドバイスされているように、次の rake タスクを /lib/tasks/scheduler.rake に作成しました。
desc "This task is called by the Heroku scheduler add-on"
task :auto_results => :environment do
puts "Updating results..."
@cups = Cup.all
@cups.each do |cup|
cup.fix_current_results
end
puts "done."
end
task :update_game_dates => :environment do
puts "Updating game dates..."
@cups = Cup.all
@cups.each do |cup|
cup.update_game_dates
end
puts "done."
end
私のローカル環境ではタスクは正常に実行されますが、Heroku にプッシュインしてタスクを実行すると、それぞれが次のエラーで中止されます。
rake aborted!
undefined method `name' for nil:NilClass
私には、Heroku がどうにかしてデータベースにアクセスできず、メソッドを実行できるオブジェクトを回復していないように見えます。
アイデアはありますか?