如何在Rails上禁用特定的邮件程序?

时间:2015-11-07 20:43:25

标签: ruby-on-rails actionmailer

所以我正在使用Shoppe 1.0.7构建电子商务平台。

基本上,我希望我的客户收到包含订单确认信息,商品详情等的电子邮件,因此我建立了一个邮件服务器。

当我开始工作时,我发现Shoppe实际上发出了自己的确认电子邮件,但这些电子邮件比我的更通用且没有信息(他们也是英语,我需要另一种语言) )。事实上,我的客户在订单时实际上收到了两封电子邮件,这显然是不可取的。

如何在不禁用Shoppe的情况下禁用Shoppe的邮件程序(我显然需要这样做)?

1 个答案:

答案 0 :(得分:0)

我对Shoppe并不熟悉,但乍一看我看不到邮件周围的任何配置选项。 OrderMailer中有four actions,它们似乎只使用herehere。一个选项是打开邮件程序类并重新定义方法。

module Shoppe
  class OrderMailer
    def received(order)
      true
    end
  end
end

这不是像这样的猴子补丁的最佳解决方案,更好的选择是使用动作邮件interceptor。或者,你可以看看是否有任何问题已经在他们的回购中提出,如果没有提交,或者是一个允许邮件配置的PR。推动上游可能是一个很好的功能。