php – 如何在Symfony 2.4中缓存带有缓存ID和缓存生存期选项的do
发布时间:2020-12-13 13:04:25 所属栏目:PHP教程 来源:网络整理
导读:我正在使用doctrine 2.4开发symfony 2.5项目. 我想缓存查询结果的缓存ID和缓存时间,所以我可以删除缓存结果,只要管理员需要. 我能够使用“createQueryBuilder()”选项缓存查询结果. 例: $this-createQueryBuilder('some_table') -select('some_table') -whe
我正在使用doctrine 2.4开发symfony 2.5项目.
我想缓存查询结果的缓存ID和缓存时间,所以我可以删除缓存结果,只要管理员需要. 我能够使用“createQueryBuilder()”选项缓存查询结果. 例: $this->createQueryBuilder('some_table') ->select('some_table') ->where('some_table.deleted_date IS NULL') ->getQuery() ->useResultCache(true) ->setResultCacheLifetime(120) //Query Cache lifetime ->setResultCacheId($queryCacheId) //Query Cache Id ->getResult(); 但我无法找到与“findOneBy()”选项的chache查询结果类似的方法. 例: $this->findOneBy(array('some_field'=>$some_value)); 我正在寻找一些合适的解决方案,非常感谢任何帮助.
您需要将每个findBy *或findOneBy *函数重新定义到自定义存储库中:这是doctrine2默认行为不考虑这种情况的唯一方法.
不幸的是,由你决定. Ocramius(Doctrine2 devel)也在这里说https://groups.google.com/d/msg/doctrine-user/RIeH8ZkKyEY/HnR7h2p0lCQJ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |