Я пытаюсь отсортировать несколько записей для модели на основе поля и сохранить их ранги в БД.Как показано ниже:
$instances = Model::orderBy('field')->get();
$rank = 1;
foreach ($instances as $instance) {
$instance->update([
'rank' => $rank,
]);
$rank++;
}
У меня есть два вопроса: 1- Есть ли альтернативные способы избежать использования цикла?например, я помещаю ранги в массив и обновляю целые записи только одним магическим методом.Например:
$instances = Model::orderBy('field')->get();
$rank = 1;
$ranks_array = array();
foreach ($instances as $instance) {
array_push($ranks_array, $rank);
$rank++;
}
$instances->magicMethod($ranks_array);
2 - нужно ли вообще это делать?циклы сильно влияют на сервер или нет?Надо сказать, что количество записей, которые я собираюсь обновить, может не превышать 50.