php – 如何在Symfony 2.4中缓存带有缓存ID和缓存生存期选项的doctrine“findOneBy()”查询?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何在Symfony 2.4中缓存带有缓存ID和缓存生存期选项的doctrine“findOneBy()”查询?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用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

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何在Symfony 2.4中缓存带有缓存ID和缓存生存期选项的doctrine“findOneBy()”查询?全部内容,希望文章能够帮你解决php – 如何在Symfony 2.4中缓存带有缓存ID和缓存生存期选项的doctrine“findOneBy()”查询?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。