我在这里阅读了几篇文章以及如何在swiftmailer中包含2个不同的电子邮件的文档,但我收到错误并且不知道为什么。
这是我的配置:
//config.yml
swiftmailer:
default_mailer: mailer
mailers:
mailer:
transport: smtp
host: some.host1
username: some.username1
password: some.password2
mailer2:
transport: gmail
host: some.host2
username: some.username2
password: some.password2
我还创建了一个服务文件:
# app/config/services.yml
services:
mailer:
class: AppBundle\Mailer
arguments: [sendmail]
mailer2:
class: AppBundle\Mailer
arguments: [sendmail]
在控制器中,我指的是:
$mailer = $this->get('mailer2');
//or
$mailer = $this->get('mailer');
但只有默认邮件程序有效。如果是第二封邮件,我得到:
You have requested a non-existent service "mailer2".
我该如何解决这个问题?
答案 0 :(得分:1)
您无需配置服务文件。
获取第一封邮件:
$container->get('swiftmailer.mailer.mailer');
要获得第二封邮件:
$container->get('swiftmailer.mailer.mailer2');
获取默认邮件程序:
$container->get('swiftmailer.mailer');
的文档