私はherokuで実行中のアプリケーションを持っていて、毎日1回、every_dayという名前のtakを実行します。タスクスケジューラは正常に動作していますが、私のデータベースには何もしません。私も手動でそれを実行しようとしたと同じ結果です。私は問題が私のコードにあると思うし、誰かが何が間違っているか教えてくれれば感謝しています。タスクのこのコード:私はそれを手動で実行するとHeroku/Rails:タスクスケジューラは動作していますが、何もしません。
task :every_day => :environment do
unactive_auction = Auction.where(ended: false).where('created_at < ?', 14.days.ago)
unactive_auction.update_all(:ended => true)
end
私はこれを取得:
, [2017-06-07T07:08:26.348223 #4] DEBUG -- : Auction Load (1.7ms) SELECT "auctions".* FROM "auctions" ORDER BY "auctions"."id" ASC LIMIT $1 [["LIMIT", 1000]]
D, [2017-06-07T07:08:26.677182 #4] DEBUG -- : SQL (1.3ms) UPDATE "auctions" SET "ended" = 't' WHERE "auctions"."ended" = $1 AND (created_at < '2017-05-24 07:08:26.674476') [["ended", false]]
私は私が間違ってやっている見当がつかない。それは働いているように見えますが...しかし、それは何もしません。
あなたは何もしないと言いますか?どのように確認しますか? 'terminated'ブール値ですか?あなたのコンソールで同じものを実行してみてください –