我有一个表格products
,其结构如下:
id | name | promote
其中列promote
是布尔类型。
我想选择某些行并将boolean
列的值设置为1
,未选择的行则设置为0
。我在控制器中编写了以下代码来处理此查询。
$yes = Tour::whereIn('id', $request->promote)->get();
$no = Tour::whereNotIn('id', $request->promote)->get();
foreach ($yes as $item) {
$item->promote = 1;
$item->save();
}
foreach ($no as $item) {
$item->promote = 0;
$item->save();
}
我从表单请求中得到以下内容。
上述代码确实有效,但我认为它不够高效。我正在寻找其他可选的方法以更有效地实现结果。