拦截在开发环境中使用Pony gem发送的邮件

时间:2012-04-17 19:43:54

标签: ruby ruby-on-rails-3 email pony

我正在使用Pony gem for ruby​​ on rails,我想知道是否有办法拦截开发和登台环境(任何非生产环境)中的邮件并将其发送到受控地址,就像你可以做的那样使用ActionMailer。

我知道使用ActionMailer你只能使用一个拦截器......

2 个答案:

答案 0 :(得分:2)

我个人使用mailcatcher作为拦截器(我不确定我是否使用“拦截器”来表示同样的事情)。然后你只需要将默认的Pony.options:via_options设置为smtp://127.0.0.1:1025,邮件将被发送到mailcatcher。

答案 1 :(得分:0)

只需为您的环境修补Pony对象中的邮件方法即可。像这样......

class Pony
  alias_method :original_mail, :mail

  def mail(args)
    args[:to] = 'intercept@example.com'
    original_mail(args)
  end
end