Symfony 2: Doctrine Cache Namespace


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"接口是导入的!

格雷兹和谢谢, 天空。。。

相关内容

  • 没有找到相关文章

最新更新