У меня есть обработчик eloquent log, и я хочу ограничить его только для 10 последних строк, удалив остальные.
Если я попытаюсь $model->orderBy('id', 'desc')->skip(10)->delete();, если количество строк меньше 10, все строки будут удалены.
$model->orderBy('id', 'desc')->skip(10)->delete();
Вот решение, но оно не очень элегантное.
$delete_rows = $model->select('id')->orderBy('id', 'desc')->skip(9)->get()->toArray(); $model->whereIn('id', $delete_rows)->delete();