Sonata块http缓存处理程序Sonata.cache.noop未定义


Sonata block http cache handler sonata.cache.noop not defined

我试图设置sonata块缓存,但当我设置http_cache处理程序时,即使服务似乎在那里,我也会遇到异常。

我当前的测试设置是以下

sonata_cache:
    caches:
        predis:
            servers:
                - {host: %redis_host%, port: %redis_port%, database: 2}
        apc:
            token:  %secret%   # token used to clear the related cache
            prefix: %domain%     # prefix to ensure there is no clash between instances
#            servers:
#                - { domain: %domain%, ip: 127.0.0.1, port: 80 }
            timeout:
                RCV: { sec: 5, usec: 0 }
                SND: { sec: 5, usec: 0 }
sonata_block:
    http_cache:
#        handler: sonata.cache.noop
        listener: true

我可以在sonata_cache.caches 上看到我启用的多个服务

$ app/console debug:container sonata.cache.noop
[container] Information for service sonata.cache.noop
Service Id       sonata.cache.noop
Class            Sonata'Cache'Adapter'Cache'NoopCache
Tags
    - sonata.cache                   ()
[...]

如果我将sonata_block设置更改为:

sonata_block:
    http_cache:
        handler: sonata.cache.noop
        listener: true

我得到了以下异常

ContainerBuilder.php第796行中的InvalidArgumentException"服务定义"sonata.cache.noop"不存在。"

有人有类似的问题吗?

尝试替换:

handler: sonata.cache.noop

至:

handler: sonata.block.cache.handler.noop