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
Requires
- php: >=8.0
- illuminate/support: ^9.0|^10.0|^11.0
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