gem「いつでも」を使用して、一定期間(6か月)後にレコードのクリーンアップを試みました。
私のいつでもスケジューラーで:
every 1.month, at: '1am' do
rake 'lib/tasks/cleanup_user.rake'
end
lib/tasks/cleanup_user.rake で
@user = User.all.where(:created_at > 'Time.6.month.ago').delete
ほぼ正しいようです。ただし、「初期化されていない定数ユーザー」というエラーが発生しました。私はレールに比較的慣れていません。助けてください。
編集:クリーンな1行コマンドを実行してゲームを変更しました:
set :output, "log/cron.log"
every 1.minutes, :environment => :development do
command 'User.where("confirmed = 0 AND created_at <= ?", 6.months.ago).delete'
end
特定の環境を設定し、これをコマンドで実行します。
whenever --set environment=development --update-crontab userscleaning
crontab で確認しましたが、まだ機能していません。何か考えはありますか?