Увеличение значения поля
код, который у меня есть в функции, выглядит следующим образом:
DB::table('projects')
->where('order', DB::raw("(select `order` from projects)"))
->order + 1;
ошибка, которая показывает мне, выглядит следующим образом:
Undefined property: Illuminate\Database\Query\Builder::$order
как я могу это исправить?
1
1 answers
Обычно не рекомендуется использовать order
как имя поля, так как в некоторых движках это зарезервированное слово.
Отвечая на вашу проблему, вы должны использовать метод increment, доступный в Query Builder и Eloquent, если вы хотите увеличить все значения столбца order
(я переименовал его в ordering
в моем примере), следующий синтаксис должен работать:
DB::table('projects')-->increment('ordering');
Дополнительная информация в документации: https://laravel.com/docs/5.5/queries#increment-and-decrement
2
Author: Shaz, 2017-10-24 14:51:33