Как сохранить в существующем кеше коллекцию и обновить кеш в laravel

return Cache::remember('districts.all',60*60, function (){
    return District::all();
});

кеш коллекция

[
 {
    "id": 1,
    "title": "Dhaka"
 },
 {
    "id": 2,
    "title": "Rajshahi"
 },
 {
    "id": 3,
    "title": "Barishal"
 }
]

Теперь, как добавить новое в кеширование districts.all

 "id":4 ,
 "title":"New District"

а также как обновить этот кеш

 "id":3,
 "title":"Khulna"

1 ответ

Laravel не имеет специальной функции для непосредственного обновления кэша, но вы все равно можете очистить districts.all и переопределить его снова с новым значением:

Cache::forget('districts.all');

$district = new District();
$district->id = 4;
$district->name = "New District";

Cache::remember('districts.all', 60*60, function () use ($district) {
    return District::all()->push($district);
});
Другие вопросы по тегам