在 symfony 服务中指定一个空白参数



我正在尝试在symfony中定义一个自定义的SwiftMailer传输作为服务,除了服务定义之外,我几乎得到了它。下面的XML来自Swiftmailer-Mailgun-bundle,这是有效的,但是我们应用程序中的所有配置都在YML中,下面的XML的YAML版本是什么?

<service id="mailgun.swift_transport.transport" class="cspooSwiftmailerMailgunBundleServiceMailgunTransport" public="true">
    <argument></argument>
    <argument type="service" id="mailgun.library"></argument>
    <argument>%mailgun.domain%</argument>
</service>

它有点,我不知道你是如何在 YAML 中做到这一点的。

自己想通了。查看mailgun捆绑包中的代码,它有一个名为cspooSwiftmailerMailgunExtension的类,它装饰服务定义,将XML中定义的这个空白参数定义为mailgun.swift_transport.eventdispatcher的一种类型,所以可以肯定的是,将其添加到配置中似乎已经修复了它。

swiftmailer.mailer.transport.engage_mailgun:
          class: fooWebsiteBundleSwiftMailercustomMailgunTransport
          arguments: ['@mailgun.swift_transport.eventdispatcher','@mailgun.library','testdomain.com']

以为我会发布解决方案,以防其他人遇到它。

最新更新