我有一个带有actionmailer的rails应用程序,可以向客户发送提醒。所以我希望在特定的日期时间发送电子邮件。我怎么能这样做,或者来自控制器的任何动作?
答案 0 :(得分:8)
您可以通过使用某种后台任务来实现此目标,例如resque或delayed_job。
此外,像whenever这样的宝石(Ruby中的Cron作业)可以帮助你实现目标!
查看this tutorial,其中显示通过Active Job和delayed_job发送带有后台处理器的电子邮件
要在特定日期时间发送电子邮件,您可以deliver_later使用wait_until
选项。
Notifier.welcome(User.first).deliver_later(wait_until: 10.hours.from_now)