Yii2 GridView 如何将列表查询的数据缓存?

需求:每次打开下属客户列表的时候耗时太长,想使用缓存解决。

1、根据Yii2 GridView 插件的用法,$dataProvider得出的只是查询对象语句,并不是结果数组,用缓存的话这就没什么意义了。应该怎么解决?

clipboard.png

说明:用过ArrayDataProvider,但是表头排序没了,需要sort一个个加上,不灵活。

阅读 3.1k
1 个回答

你可以在searchModel里边写类似

........
Yii::$app->db->cache(function($db) use($dataProvider){
            $dataProvider->prepare();
}, 60);
return $dataProvider;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题