doctrine:
orm:
metadata_cache_driver:
type: xcache
namespace: %foobar%
嗨,我想通过 %foobar 等参数设置原则缓存命名空间。 参数 %foobar% 将通过编译器传递设置
class FoobarCompiler implements CompilerPassInterface {
public function process(ContainerBuilder $container) {
$container->setParameter('foobar', uniqid());
}
}
并且这个编译器通过以下方式在捆绑类中传递 ist 寄存器:
public function build(SymfonyComponentDependencyInjectionContainerBuilder $container) {
$container->addCompilerPass(new FQNSCompilerFoobarCompiler());
}
但是我收到此错误:
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException] 您请求了一个不存在的参数"foobar"。
知道如何通过此参数"Foobar"设置原则缓存命名空间吗?
格雷兹和谢谢, 天空。。。
答案是这个片段:
class FoobarExtension extends Extension implements PrependExtensionInterface {
...
public function prepend(ContainerBuilder $container) {
$container->setParameter('foobar', uniqid());
}
}
添加"PrependExtensionInterface"接口是导入的!
格雷兹和谢谢, 天空。。。