【问题标题】:Rails email schedulingRails 邮件调度
【发布时间】:2012-06-22 02:20:40
【问题描述】:

我正在开发一个应用程序,用户可以在该应用程序中输入他们想要提醒的特定日期(生日、纪念日、假期等)。我需要设置一封自动电子邮件,该电子邮件会在发送前 2 周、1 周和 1 天发出他们选择的日期。

在 rails 3 应用程序中解决此问题的最佳方法是什么?

我有 mandrill(smtp) 和 Mailchimp 帐户..

谢谢!

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 email ruby-on-rails-3.1 actionmailer


    【解决方案1】:

    设置一个 rake 任务,检查是否需要发送任何电子邮件,然后在任务中发送它们。然后,使用提到的 heroku 插件垃圾收集来运行“rake my_email_task”,其中 my_email_task 是您的自定义任务的名称。

    【讨论】:

      【解决方案2】:

      你有没有机会在 Heroku 上运行这个?

      Heroku has an add-on for this kind of task.

      【讨论】:

      • 是的,我是!它是否允许您在电子邮件中发送用户特定的内容?..我根据他们的城市向用户发送交易..
      • 似乎只有“调度程序插件将对您的应用程序运行任意数量的命令,每 10 分钟、每小时或每天一次。”.. 我需要它根据日期用户输入,而不是我输入的内容。
      • @NKeating 只需设置一个调度程序以每 x 分钟(例如 10 分钟)运行一次 rake 任务。 rake 任务应该检查是否有任何日期在过去但尚未发送的电子邮件。这将确保在截止日期后的 10 分钟内发送电子邮件。如果您需要更高的准确性,您可以使用工作人员(heroku 建议使用时钟),但考虑到您最多在 1 天前发送,即使这样也应该没问题。
      • @SteveSmith 谢谢!.. 所以说有人设置了 8 月 1 日的提醒.. 我需要在 2 周、1 周和 1 天前发送 3 个提醒.. 这个逻辑是否适用邮件程序还是控制器?
      • 我个人会把它放在我认为的模型中。类似于 find_due_reminders 的东西。然后将那一系列提醒传递给邮件程序?
      猜你喜欢
      • 2019-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多