khairul/laravel-auto-refresh-cache

Automatically refresh Laravel cache on model save or delete events.

Installs: 5

Dependents: 0

Suggesters: 0

Security: 0

Stars: 3

Watchers: 0

Forks: 1

Open Issues: 0

pkg:composer/khairul/laravel-auto-refresh-cache

1 2025-08-12 02:24 UTC

This package is auto-updated.

Last update: 2026-01-12 04:59:42 UTC


README

This package provides an easy way to auto-refresh cache for Laravel models on save/delete actions.

Installation

composer require khairul/laravel-auto-refresh-cache:dev-main

Open config/app.php and add the following line to the providers array:

'providers' => [
    // Other service providers...

    Khairul\AutoRefreshCache\AutoRefreshCacheServiceProvider::class,
],

Publish Config

php artisan vendor:publish --tag=config --provider="Khairul\AutoRefreshCache\AutoRefreshCacheServiceProvider"

Configuration

Add your cache-aware models to config/auto_refresh_cache.php:

return [
    'models' => [
        App\Models\CancelReason::class,
        App\Models\ProductCategory::class,
    ],
];

Usage

In your model, use the trait and set the cache key:

use Khairul\AutoRefreshCache\Traits\AutoRefreshCache;

class CancelReason extends Model
{
    use AutoRefreshCache;

    protected static string $cacheKey = 'cancel_reasons_all';
}

Fetch cached data:

$cancelReasons = CancelReason::allFromCache();

Refresh Cache Manually

Run this artisan command to refresh all caches:

php artisan cache:refresh