cron ジョブと遅延ジョブを学習しています。バックグラウンド ジョブを使用してメールを送信したいと考えています。そのために私はdelayed_job
宝石を使用しています。コマンドを実行してワーカーを手動で開始したくはありませんが、rake jobs:work
このレーキを cron ジョブに設定して、ユーザーがダッシュボードにログインするたびにこのコマンドが起動され、メールがそのアドレスに送信されるようにしたいと考えています。以下は私のコードです:
メール送信方法
def dashboard
@user = User.find(params[:id])
UserMailer.delay.initial_email(@user)
end
ユーザーメーラー
def initial_email(user)
@user = user
mail(:to => user.email,:subject => "Welcome to my website!")
end
「いつでも」Gem を使用している cron ジョブの場合、ダッシュボードにログインしたときにワーカーを手動で実行せずにメールを受け取るには、schedule.rb ファイルに何を記述すればよいですか?