'value', ...]. // Кешируем plain array, а не Collection — иначе file-кеш падает с __PHP_Incomplete_Class при unserialize. public static function all($columns = ['*']): Collection { $data = Cache::remember(self::CACHE_KEY, self::CACHE_TTL, function () { return parent::all(['key', 'value'])->pluck('value', 'key')->toArray(); }); return collect(is_array($data) ? $data : []); } // Получить одну настройку по ключу public static function get(string $key, string $default = ''): string { return static::all()[$key] ?? $default; } // Сохранить настройку и сбросить кеш public static function set(string $key, ?string $value): void { static::updateOrCreate(['key' => $key], ['value' => $value]); Cache::forget(self::CACHE_KEY); } // Сбросить кеш настроек (вызывается после массового сохранения) public static function clearCache(): void { Cache::forget(self::CACHE_KEY); } }