3

yml形式に変換する必要があるFosUserBundleサービスがあります。どうすればこれを行うことができますか?ダンパーコンバーターなどがありますか?

これはymlでどのように見えますか?

    <service id="fos_user.mailer.twig_swift" class="FOS\UserBundle\Mailer\TwigSwiftMailer" public="false">
        <argument type="service" id="mailer" />
        <argument type="service" id="router" />
        <argument type="service" id="twig" />
        <argument type="collection">
            <argument key="template" type="collection">
                <argument key="confirmation">%fos_user.registration.confirmation.template%</argument>
                <argument key="resetting">%fos_user.resetting.email.template%</argument>
            </argument>
            <argument key="from_email" type="collection">
                <argument key="confirmation">%fos_user.registration.confirmation.from_email%</argument>
                <argument key="resetting">%fos_user.resetting.email.from_email%</argument>
            </argument>
        </argument>
    </service>

Ymlダンパーを使おうとしていましたが、これはシリアル化されたオブジェクトを提供しているだけです。

    $cs = new ContainerBuilder();

    $loader1 = new Loader\XmlFileLoader($cs, new FileLocator(__DIR__ . '/../../../../vendor/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config'));
    $loader1->load('mailer.xml');

    $dumper = new \Symfony\Component\Yaml\Dumper();

    file_put_contents(__DIR__ . '/test2.yml', $dumper->dump($cs));

ヒントをいただければ幸いです。前もって感謝します。

4

1 に答える 1

7

あなたはそのような方法でそれを試すことができます:

services:
    fos_user.mailer.twig_swift:
        class: FOS\UserBundle\Mailer\TwigSwiftMailer
        arguments:
            - @mailer
            - @router
            - @templating
            - { template: { confirmation: %fos_user.registration.confirmation.template%, resetting: %fos_user.resetting.email.template% }, from_email: { confirmation: %fos_user.registration.confirmation.from_email%, resetting: %fos_user.resetting.email.from_email% } }

間違ったダンパーを使用するだけでなく、使用する必要がありますSymfony\Component\DependencyInjection\Dumper\YamlDumper

于 2013-02-05T20:06:06.437 に答える