CakePHP:分页,排序,过滤来自缓存表的数据

时间:2012-01-18 11:15:48

标签: php cakephp caching filter pagination

我正在尝试使用Cake的本机缓存方法来缓存我需要分页,排序和填充(搜索)的一些数据 - 这就是为什么我要缓存数据数组,而不是视图或分页数组/视图。据我所知,搜索/过滤组件和Paginator只询问数据库,这是我不想要的。有什么方法可以把它们放在蛋糕里吗?提前感谢您的回答。

1 个答案:

答案 0 :(得分:0)

你认为Cake总是希望数据库结果能够进行分页是正确的。最简单的解决方案之一是refactoring a class like this one到帮助程序(用于分页)或组件(用于过滤)并为数据数组提供辅助/组件(有关自定义helpers和{{3}的更多信息})。唯一的缺点是您的应用程序必须在创建分页结果集之前将缓存的数组读入内存。

还有components,但我不确定是否适用于您的设置。

另一种选择可能是为缓存的数据数组编写自己的数据源,this article对此有点微不足道。我已经涉足了为某些自定义XML提要创建数据源,但从未尝试过添加分页。从浮动的第三方数据源我不确定它是否可能。