Browse Source

+ support additional pieces for generate cache tags on clear cache general method

master
dimti 2 years ago
parent
commit
c388e2c156
  1. 6
      classes/observer/BaseObserver.php

6
classes/observer/BaseObserver.php

@ -8,12 +8,12 @@ abstract class BaseObserver implements Observer
{ {
protected static string $class; protected static string $class;
public static function clearCache(?Model $model = null): void
public static function clearCache(?Model $model = null, ?array $additionalPieces = []): void
{ {
Cache::tags( Cache::tags(
static::getCacheTag( static::getCacheTag(
!is_null($model) ? $model->getKey() : null, !is_null($model) ? $model->getKey() : null,
[],
$additionalPieces,
true true
) )
)->flush(); )->flush();
@ -22,7 +22,7 @@ abstract class BaseObserver implements Observer
/** /**
* @param int|Collection|array|null $identifiers * @param int|Collection|array|null $identifiers
* @param array|null $additionalPieces * @param array|null $additionalPieces
* @param bool $excludeBaseClassNameTagWithoutIdentifiers
* @param bool $excludeBaseClassNameTagWithoutIdentifiers - это опция нужна, если вы хотите исключить имя базового класса обсервера из результирующего набора тегов
* @desc $excludeBaseClassNameTagWithoutIdentifiers - выключает из результирующего массива тег кеша только с базовым классом, если переданы идентификаторы * @desc $excludeBaseClassNameTagWithoutIdentifiers - выключает из результирующего массива тег кеша только с базовым классом, если переданы идентификаторы
* @desc То есть в итоговой выборке - не будет тега, без идентификатора, если вообще идентификаторы переданы * @desc То есть в итоговой выборке - не будет тега, без идентификатора, если вообще идентификаторы переданы
* @return array * @return array

Loading…
Cancel
Save