Symfony 可重用包默认配置

Symfony reusable bundle default configuration

我正在玩 Symfony 可重用包,我想为我的所有其他项目(如公共实体、控制器等)制作一些默认配置的包。但问题是我想为第 3 方保留一些默认配置该捆绑包中也有捆绑包(easy admin,fos user bundle,...)。

我想在我的包中设置一些默认配置,并在需要时在 app/config 中覆盖它...这可能吗?如果是,我该如何实现。

提前致谢

您也许可以编写一个编译器通道,在您的第 3 方包中设置参数。

这是我做的编译器传递示例 here

所以在你的编译器传递中你会得到类似的东西:

$fosParameters = ['db_driver' => 'orm', 'firewall_name' => 'main'];

$container->setParameter(
    'fos_user',
    $fosParameters
);

此外,不要忘记像我一样将编译器传递添加到捆绑文件中 here

我不是 100% 确定这会奏效,但我不明白为什么它不会奏效。

您需要使用前置扩展配置来保留其他扩展配置。

遵循文档

https://symfony.com/doc/current/bundles/prepend_extension.html