AO
Есть модель Test у неё есть метод getQwerty, который через cache::remember (ттл 3 часа) возвращает все модели QWERTY, связанные с Test. Ключ кэша qr-{test->Id}
Хотел сделать сброс кэша при обновлении модели QWERTY, но перед этим решил потестить.
Делаю $test->getQwerty();
Далее изменяю первый элемент коллекции, например: getQwerty()->first()->update([“name” => “0”]) (до этого name было «1»
Затем делаю повторно $test->getQwerty(), ожидая получить кэшированные НЕизмененные данные из первого запроса. Но в результате я получаю данные, где name => 0
Я проверил через прослушку запросов к базе и на наличие ключа в кэшэ. Из базы запрос делается только первый раз, второй раз действительно идёт из кэша. Проверка по ключу кэша сказала, что ключ всегда на месте. Действие внутри Cache::remember, выполняется только 1 раз - при запросе (добавлял запись в лог).
И я никак не могу понять, как поменялись данные в кэше, если я их не перезаписывал и не сбрасывал.
Тестирую phpUnit, кэш - Redis