2016-08-03 37 views
1

我试图设置奏鸣曲块缓存,但是当我设置http_cache处理程序时,即使服务似乎在那里,我也收到异常。奏鸣曲块http缓存处理程序sonata.cache.noop未定义

我目前的测试设置以下

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 

我得到了以下异常

InvalidArgumentException在ContainerBuilder.php行796 “的服务 定义 ”sonata.cache.noop“ 不存在”。

有没有人有类似的问题?

回答

1

尝试更换:

handler: sonata.cache.noop 

到:

handler: sonata.block.cache.handler.noop 
相关问题