私は最初のレーキタスクをレールに書きました。私はHerokuスケジューラでセットアップしていますが、メールは送信されません。私のメール設定は、他のさまざまなものに使用しているのでうまくいきます。レーキタスクのコードに問題があると思います。どんな助けでも大歓迎です。すくいuncomplete_formを実行することにより レイクタスクがメールレールを送信しない
desc "Remind users if they haven't completed quote form"
task uncomplete_form: :environment do
puts 'Reminding users of uncomplete quote form'
date = Date.parse('december 18 2016')
quickcontacts = Quickcontact.where(created_at: date.midnight..Time.now)
quickcontacts.each do |quickcontact|
next unless quickcontact.created_at > 1.hour.ago
if quickcontact.p_p = nil
QuickcontactMailer.uncomplete_form(@quickcontact).deliver
end
end
puts 'done.'
end
uncomplete_form.rake
のlib /タスク/ Iが行わuncomplete見積もりフォーム
の
思い出させるユーザーを取得します。
そして Herokuの実行の熊手を実行しているuncomplete_form 私はそれがどんなquickcontactsをピックアップしていないよう
Reminding users of uncomplete quote form
Quickcontact Load (1.5ms) SELECT "quickcontacts".* FROM "quickcontacts" WHERE ("quickcontacts"."created_at" BETWEEN '2016-12-18 00:00:00.000000' AND '2016-12-20 12:09:23.683977')
done.
を得る - しかし、私は実行するコンソールでの場合:
続いdate = Date.parse('december 18 2016')
quickcontacts = Quickcontact.where(created_at: date.midnight..Time.now)
これは、 ected連絡先
タイムゾーンの問題である可能性があります。 HerokuスケジュールはUTCで動作します。その方法でデバッグを試みてください。 – Jayaprakash
私はそれについて考えましたが、UTCの時間は私の前で2時間であり、いくつかのクイックコンタクトは昨日(12月19日)に作成されたので、違いはないと思います。 – DanRio