假脱机邮件并直接发送邮件

时间:2012-10-30 09:36:22

标签: symfony swiftmailer spool

我需要两种邮件:

  1. 假脱机邮件(散装邮件)
  2. 直接邮寄(如注册邮件)
  3. 现在我有2项服务:

    <service id="spool_mailer" class="%swiftmailer.class%">
        <argument type="service" id="swiftmailer.transport"/>
    </service>
    
    <service id="mailer" class="%swiftmailer.class%">
        <argument type="service" id="swiftmailer.transport.real"/>
    </service>
    

    但是“swiftmailer.transport.real”将忽略“swiftmailer.delivery_address”并在dev env中忽略它所需要的。我尝试了其他传输,但他们将假脱机邮件:Configure SwiftMailer

    如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我认为你的解决方案虽然聪明,却很狡猾,依赖于绕过Swiftmailer的一些内部功能。绕过将电子邮件发送到假脱机的代码部分似乎也绕过了设置传递地址的代码部分。我不会在没有阅读源代码的情况下这样做,以清楚地了解还有什么不发生。

我认为支持的方法是使用多个邮件程序,如下所述:http://symfony.com/doc/current/reference/configuration/swiftmailer.html#using-multiple-mailers

这将允许您定义两个不同的邮件程序,其中一个可以配置为使用假脱机。 (你也可以有两个邮件,每个都有自己独立的线轴)