php artisan view:clear
php artisan cache:clear
php artisan cache:table
komutunu çalıştırıyorum.CACHE_DRIVER
seçeneğine database yazıyorum.'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache_'),
dedim ve yine env dosyamda APP_NAME'i "Hedef40" olarak yazdım. böylece Str::slug fonksiyonunundan sonra cache dosyalarının prefixi hedef40_cache_CACHE_ADI şeklinde olacaktır.
X bir sorguyu belli bir süreliğine Cache'de tutmak istersen öncelikle Cache::remember kullanabilirim
$goals = Cache::remember('abandonedGoals', $seconds = 3600, function () {
return Goal::select('id', 'title', 'created_at')
->whereDay('created_at', '<', now()->subDays(4))
->with(['subscriptions:id,goal_id', 'subscriptions.trials'])
->get()
->filter(function ($goal, $key) {
if($goal->subscriptions->count() == 1){
return $goal->subscriptions->first()->trials->count() == 0;
}
});
});
Cache::remember
demek yerine Cache::forever
komutunu çalıştırabiliriz. linkCache::forget
kodu ile Cache dosyasını sildirtebilirim.
$cachedElements = [
'abandonedGoals',
'abandonedSubs',
];
foreach($cachedElements as $element){
Cache::forget($element);
}