【发布时间】:2017-02-08 20:50:28
【问题描述】:
好的,所以我一直在研究 Yii 的缓存,我有一个关于页面缓存的问题 (http://www.yiiframework.com/doc-2.0/guide-caching-page.html)。
假设我有一个控制器 PageController 有 2 个动作,PageController::actionIndex() 和 PageController::actionView($id)。
我的 behaviours() 数组看起来像这样:
'class' => 'yii\filters\PageCache',
'only' => ['index', 'view'],
'duration' => 3600,
'variations' => [
\Yii::$app->language,
\Yii::$app->user->id,
],
'dependency' => [
'class' => 'yii\caching\DbDependency',
'sql' => 'SELECT COUNT(*) FROM `page` WHERE `featured` = 1 AND `deleted` = 0;',
],
我的问题是,我有 2 个操作,但每个操作的依赖项是不同的。对于索引,我想计算页数,但对于视图,我可能想为 last_updated 进行选择。
SELECT last_updated FROM page WHERE id = 1;
那么我该如何为页面缓存的每个操作建立依赖关系?
【问题讨论】:
-
您是否尝试过简单地将这种行为分成两种行为?