Yii2按变体删除缓存



我只想按变体刷新缓存,例如,只使用变体id 5 刷新缓存

我没有找到任何关于flush参数的参考资料。。提前谢谢。

没有办法通过各种方式刷新缓存,至少没有任何标准化的方式(不同的缓存存储的实现方式会有所不同,对于其中一些缓存存储,这可能是不可能的(。但是,您可以使用TagDependency使缓存无效-在调用TagDependency::invalidate()之后,旧缓存仍将存储在缓存存储中,但在Cache::get()调用时会被丢弃。

我无法通过TagDependency::invalidate()实现。但我找到了另一个解决方案。所以,如果你像这样缓存(在模板中(:

$this->beginCache('someKey', ['variations' => [$param1, $param2]]);

你可以很容易地从另一个地方删除这个缓存,比如:

Yii::$app->cache->delete(['yiiwidgetsFragmentCache', 'someKey', $param1, $param2]);

最新更新