我正在使用Ruby和Devise:Confirmable。新用户注册并确认新的试用帐户后的第二天左右,我们希望自动向他或她发送“后续电子邮件”。这是我们还应该通过设计来做的事情,还是应该实施单独的瑰宝或过程?
答案 0 :(得分:0)
由于您已经在使用Devise,因此只需覆盖确认控制器,请尝试类似的操作。
class ConfirmationsController < Devise::ConfirmationsController
# GET /resource/confirmation?confirmation_token=abcdef
def show
super do |resource|
YourMailerClass.follow_up(resource).deliver_later(wait_until: 1.day.from_now) if resource.errors.empty?
end
end
end
您还需要更新routes.rb
文件,在定义controllers: { confirmations: :confirmations }
的行的末尾添加选项devise_for
(此后重新启动服务器)。
我假设您已经有一个后台作业处理器,例如sidekiq
希望有帮助