Как лучше всего обновить несколько записей в базе данных с помощью doctrine, symfony2?
Я получаю массив идентификаторов записей, которые мне нужно обновить.
Я хочу присвоить каждой записи ее индекс из полученного массива столбцу show_order.
Итак, если я получаю array $ array = array (22, 1, 5, 10), тогда я хочу сделать
$i = 0;
foreach($array as $a) {
$record = $this->getDoctrine->getRepository('AcmeBundle:SomeEntity')->findOneById($a);
if ($record != null) $record->setOrder($i++);
}
$this->getDoctrine()->getEntityManager()->flush();
, но это ужасный способ, потому что для каждой записи я делаю один SELECT, поэтому количество запросов равно O (n).
Как это сделать лучше?