Студия разработки сайтов и приложений

Netspark.ru

Заметки и разработки

OctoberCMS

Laravel и обновление моделей

В документации на фреймворк я не заметил об этом ни слова. Но оказывается, в Ларавеле обновление моделей по $model->update() действительно происходит только если переданы данные, отличающиеся от уже сохраненных. А если данные переданы те же, никакого апдейта не случится, и даже updated_at останется тем же.

Заметил случайно, когда чесал репу — почему же я запускаю скрипт апдейта данных из внешнего реестра, а время в updated_at по-прежнему равно времени создания. Хотя и тесты проходят, и скрипт запускается без ошибок. А вон оно как.

Если все же нужно, чтобы время обновления поменялось даже если запроса не было, надо использовать метод $model->touch().

Мне кажется, такие вещи в документах нужно писать большими буквами рядом со счетчиком уже пострадавших программистов.

Обсуждение

Чтобы обсудить заметку, написать комментарий, или просто связаться, заходите в Телеграм-канал. У нас весело и всем рады!

Также меня можно найти в Хвиттере, VC.ru, Дзене, или Тенчате.