如何在用户注册Ruby on Rails后x小时发送电子邮件?

8 ruby ruby-on-rails

在Ruby on Rails上,如何在用户注册后48小时向用户发送电子邮件?谢谢!

Dav*_*vid 6

正如Joseph Daigle所提到的,您需要明确记录用户注册的确切日期和时间.之后,您需要每隔一定的分钟数(例如每小时)运行一个cron,检查是否有任何新用户的注册时间超过48小时,向所述用户发送邮件并将该用户标记为已经通过电子邮件发送,所以你不要再发电子邮件了.

根据实际的邮件发送,请查看以下文档页面:http: //wiki.rubyonrails.org/rails/pages/HowToSendEmailsWithActionMailer

通过RoR发送邮件,您需要知道所有这一切.


Jos*_*gle 1

首先,您需要一个正在运行的守护进程或后台服务,它可以每隔几分钟轮询您的队列(可能来自数据库)。

该算法非常简单。记录队列中用户事件的时间。当守护程序检查队列中的该项目并且时间差大于 48 小时时,准备要发送的电子邮件。