【发布时间】:2014-10-27 00:53:47
【问题描述】:
我正在尝试使用我自己的服务来覆盖 Swiftmailer 的默认传输。这将允许我使用与 Swiftmailer 相同的方法调用,例如 setTo、setSubject、attach 等。但是,我收到以下错误消息:
The service definition "swiftmailer.mailer.transport.test.mailer" does not exist.
我目前正在使用 Symfony 2.5 和 Swiftmailer Bundle ~2.3。请查看我的 src/Bundle/ApplicationBundle/Resources/config/services.xml 文件和我的 app/config/config.yml 文件与此问题相关的部分:
services.xml
<parameters>
<parameter key="test.mailer.class">TEST\Bundle\TestBundle\Mail\MailQueueTransport</parameter>
</parameters>
<services>
<service id="test.mailer" class="%test.mailer.class%">
<argument type="service" id="service_container"/>
</service>
</services>
config.yml
imports:
- { resource: "@TESTTestBundle/Resources/config/services.xml"}
swiftmailer:
transport: "test.mailer"
所有其他服务都工作得很好,这个方法在 Symfony 2.1.3 和 Swiftmailer Bundle 2.1.0 中工作。目标是使用内置的 Swiftmailer 功能,但将电子邮件放入数据库队列中进行处理,而不是直接发送电子邮件(批量处理大量电子邮件)。
我们将不胜感激。
【问题讨论】:
标签: php symfony swiftmailer