我有一个带有actionmailer的rails应用程序,可以向客户发送提醒.所以我希望在特定的日期时间发送电子邮件.我怎么能这样做,或者来自控制器的任何动作?
解决方法
您可以通过使用某种后台任务(例如
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)