UpdateByPk в yii2

Рейтинг: 0Ответов: 1Опубликовано: 26.02.2015

Не могу найти аналог этого метода в yii2, может, кто подскажет?

В первом yii можно было сделать 1 запрос на обновление, вот так User::model()->updateByPk(1,['type'=>2]) обновив у пользователя с id = 1 тип на 2. Во втором, судя по найденной информации, это будет выглядеть как-то так:

$user= User::findOne(1);
$user->type= 2;
$user->update();

А это уже 2 запроса.

Ответы

▲ 1Принят
User::updateAll(['type' => 2], ['id' => 1]);

Т.к. вы используете AR, то Yii2 в любом случае делает как минимум один запрос на получение схемы таблицы user. т.е.

SHOW FULL COLUMNS FROM `user`