Pamięć podręczna stron odnosi się do zapisu zawartości całej strony po stronie serwera. Kiedy zostanie ona ponownie wywołana, zawartość zostanie wyświetlona od razu z pamięci podręcznej zamiast generować ją ponownie od podstaw.
Pamięć podręczna stron jest obsługiwana przez filtr akcji PageCache. Poniżej znajdziesz przykładowy sposób użycia go w klasie kontrolera:
public function behaviors() { return [ [ 'class' => 'yii\filters\PageCache', 'only' => ['index'], 'duration' => 60, 'variations' => [ \Yii::$app->language, ], 'dependency' => [ 'class' => 'yii\caching\DbDependency', 'sql' => 'SELECT COUNT(*) FROM post', ], ], ]; }
W powyższym przykładzie zakładamy użycie pamięci podręcznej tylko dla akcji index
- zawartość strony powinna zostać zapisana na maksymalnie 60 sekund i powinna różnić się w zależności od wybranego w aplikacji języka. Dodatkowo, jeśli całkowita liczba postów w bazie danych ulegnie zmianie, zawartość pamięci powinna natychmiast stracić ważność i zostać pobrana ponownie.
Jak widać, pamięć podręczna stron jest bardzo podobna do pamięci podręcznej fragmentów. W obu przypadkach można użyć opcji takich jak duration
(czas ważności), dependencies
(zależności), variations
(warianty) oraz enabled
(flaga aktywowania). Główną różnicą w tych dwóch przypadkach jest to, że pamięć podręczna stron jest implemetowana jako filtr akcji, a pamięć podręczna fragmentów jako widżet.
Oczywiście nic nie stoi na przeszkodzie, aby używać pamięci podręcznej fragmentów jak i zawartości dynamicznej w połączeniu z pamięcią podręczną stron.
Found a typo or you think this page needs improvement?
Edit it on github !
Signup or Login in order to comment.