如何使用DoctrineCacheBundle?我想缓存查询(这样每次都不会转换为SQL,对吧?)。我也想缓存结果。
我已经设置了这样:
doctrine:
orm:
metadata_cache_driver:
cache_provider: metadata_cache
query_cache_driver:
cache_provider: query_cache
result_cache_driver:
cache_provider: result_cache
和
doctrine_cache:
providers:
metadata_cache:
apc: ~
query_cache:
apc: ~
result_cache:
apc: ~
在我的控制器中:
$cache = $this->get('doctrine_cache.providers.query_cache');
if ($cache->contains('someid')) {
$surveysEntities = $cache->fetch('someid');
} else {
$surveysEntities = $this->getDoctrine()->getRepository('MyBundle:Survey')->getSurveys();
$cache->save('someid', $surveysEntities);
}
这会只缓存查询吗?或者查询和结果?够了吗?或者我也应该在我的存储库中查询?
答案 0 :(得分:0)
好的,明白了。此缓存结果。查询通过config缓存doctrine。设置。