0
我有一個應用程序提供了一個日曆,允許您創建日曆上顯示的事件。您設定的其中一個欄位是活動開始的那一天。我希望在活動的當天到達時能夠發送電子郵件提醒。Rails按計劃發送電子郵件
我是新來的鐵路,所以我不完全確定我需要什麼或從哪裏開始。我閱讀了ActionMailer的導軌指南並生成了一個郵件程序,我假設我需要其中的一個。我還閱讀了觀察員的導軌指南,並認爲這可能是我想要完成的途徑。
讓我們說,每週7天在上午9點中央,應該運行一個工作(cron或rake任務),它搜索數據庫中每個事件的'start_at'列(本地sqlite,帶有heroku的Postegre)如果start_date等於'今天?'然後發送動作郵件模板來提醒用戶。
那麼建立工作來檢查數據庫並每天啓動電子郵件的最佳方式是什麼(以及使用什麼工具)?在未來,我想這會提前提醒。
一些僞代碼:
def send_email
if self.start_at == Date.today #assuming self.start_at.today? works too.
// send email
end
只是不知道如何得到那個工作。
因此,沿着send_email EventMailer.reminder_email(@event).deliver結束並使用cron來調用cURL http:// localhost:3000/EventMailer或其他東西? – 2011-03-25 21:07:24
是的,我在很多地方都這麼做。效果很好。 – 2011-03-25 21:09:15
這確實屬於Rake任務(由cron調用)。 Rake任務會將作業排隊,而作業運行員(delayed_job,resque)將開始執行並執行作業。 – yfeldblum 2011-03-26 09:45:19