我有一个基于订阅的网站,允许未注册的用户下载文件,如果他们给我他们的电子邮件。我想要以下工作流程。
用户提供电子邮件地址
Rails将来会创建一个任务7天
用户下载电子邮件文件
如果用户未在7天内注册,请向用户发送电子邮件
我需要添加#2和#4。现在我正在使用ActiveJob和Sidekiq创建作业以发送下载电子邮件。有没有办法让我可以创建一个ActiveJob来运行?未来的工作是否可以访问我的rails环境以检查我的数据库?
答案 0 :(得分:1)
当然,您可以在一周内将ActiveJob排队。在作业的实施中,如果用户尚未注册,则有条件地发送电子邮件。请参阅ActiveJob上的Rails指南:http://guides.rubyonrails.org/active_job_basics.html#enqueue-the-job
示例:
# Enqueue a job to be performed 1 week from now.
UserConfirmationJob.set(wait: 1.week).perform_later(user)
答案 1 :(得分:0)
你能这样做吗?