@codercat

Зачем получать и обновлять весь объект модели при изменении нескольких полей?

Часто вижу подобный код:
id = params('id')
item = new Item(id)
item.somevalue = 'newValue'
item.save()


В чём смысл сперва дёрнуть базу для получения данных, потом перезаписать все поля при изменении всего 1-2 полей?
Как по мне, это выглядит как лишний шаг для удобства, но, возможно, есть более весомые причины делать лишнюю выборку и большой апдейт.

Предполагаю, что обновление всё-таки делают сравнивая полученную модель и обновлённую, тем самым формируя запрос обновления на только изменённые поля, но тогда остаётся вопрос: зачем получать, когда можно просто обновить нужные параметры?
  • Вопрос задан
  • 164 просмотра
Пригласить эксперта
Ответы на вопрос 1
Потому что они заложники концепции ORM где работа ведётся исключительно с объектами https://ru.wikipedia.org/wiki/ORM и https://habrahabr.ru/post/237889/ т.е. минимальная категория для выборки - это объект.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы