Задать вопрос
@mrFlyer

Почему при вызове метода increment модели wasChanged принимает значение true у других аттрибутов?

Приветсвую.

$book = Book::find(300);
$book->full_name = Str::random();
$book->increment('some_value');

$book->wasChanged('full_name'); //true


Почему тут true? Ведь full_name в базе не обновился ...

Должно быть true если бы я после инкремента выполнил $book->save();
  • Вопрос задан
  • 397 просмотров
Подписаться 2 Простой 16 комментариев
Пригласить эксперта
Ответы на вопрос 1
@mrFlyer Автор вопроса
В общем в гитхабе сказали делать так:

You need to use

$book->increment('some_value', extra: ['full_name' => $book->full_name]);
or
$book->increment('some_value', extra: ['full_name' => Str::random()]);
or
$book->increment('some_value', extra: $book->getDirty());


Т.е. указываем какие поля сохранять вместе с инкрементом ... так себе решение.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы