كيفية تجاوز تكوين الباقة الثالثة من الباقة الثالثة

0

أنا أصنع حزمة في Symfony 4 ، لكن في حزمتي أستخدم FOSUserBundle. لذا أود تحديد تعريف FOSUserBundle من حزمتي الخاصة وليس من التكوين الرئيسي. كيف افعلها ؟ لا يتعرف على العقدة

There is no extension able to load the configuration for "fos_user" (in C:\wamp64\www\MyProject\src\CMSBundle\DependencyInjection/../Resources/config\fos_user.yaml). Looked for namespace "fos_user", found none

وإذا قمت بتحميل تكوين FOSUserBundle (FOS \ UserBundle \ DependencyInjection / Configuration.php) في CMSExtension.php

أتلقى هذه الرسالة

The child node "db_driver" at path "fos_user" must be configured.

بناء

/src
    /CMSBundle
        /Controller
        /DependencyInjection
            CMSExtension.php
        /Entity
        /Repository
        /Resources
            /config
                fos_user.yaml
                routing.yaml
                security.yaml
                services.yaml
        CMSBundle.php

src / CMSBundle / DependencyInjection / CMSExtension.php

class CMSExtension extends Extension {

    public function load(array $configs, ContainerBuilder $container) {
        $loader = new YamlFileLoader(
            $container,
            new FileLocator(__DIR__ . '/../Resources/config')
        );
        $loader->load('services.yaml');
        $loader->load('security.yaml');
        $loader->load('fos_user.yaml');
    }

}

src / CMSBundle / Resourcers / config / fos_user.yaml

fos_user:
    db_driver: orm # other valid values are 'mongodb' and 'couchdb'
    firewall_name: main
    user_class: src\CMSBundle\Entity\User
    from_email:
        address: "%mailer_user%"
        sender_name: "%mailer_user%"

1 إجابة

1
افضل جواب

في حياتك CMSExtension فئة ، يمكنك تنفيذ PrependExtensionInterface وإضافة prepend طريقة.

في هذه الطريقة ، ستتمكن من تجاوز تكوين FOSUserBundle:

/**
 * {@inheritdoc}
 */
public function prepend(ContainerBuilder $container)
{
    $newConfig = [
        'db_driver' => '',
        ...
    ];

    $container->prependExtensionConfig('fos_user', $newConfig);
}

انظر إلى هذه الصفحة في وثائق Symfony.

:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام