1

要素のキャッシュを機能させることができません:

echo $this->element('categorytree', array(
    'cache' => array(
        'key'=>'categorytree-cache','time' => '+1 hour'
    )
))

私はcore.phpをチェックしました:

// In development mode, caches should expire quickly.
$duration = '+999 days';
/*if (Configure::read('debug') >= 1) {
    $duration = '+10 seconds';
}*/

そして、ご覧のとおりコメントしました-デバッグモードでの短いキャッシュを防ぐために...

しかし、それでもページを更新すると、キャッシュされた要素が requestAction() によって行う SQL クエリが表示されます...だから、キャッシュはありません...なぜですか?

4

1 に答える 1

1

ここで間違っているかもしれませんが、正しい呼び出しは次のようになると思います。

echo $this->element('categorytree', array(), array(
    'cache' => array(
        'key'=>'categorytree-cache','time' => '+1 hour'
    )
))

2 番目の引数は要素のパラメーターで、3 番目の引数は要素のオプション(ここで必要なもの) であることに注意してください。

関数のシグネチャはこちらで確認できます。

于 2012-04-27T20:39:56.990 に答える