我从数据库中获取行。每行有2个单选按钮。我在表中更新这些值时遇到问题。我收到此错误 -
传递给Illuminate \ Database \ Query \ Builder :: update()的参数1必须是数组类型,给定字符串
@foreach($items as $item)
<td>{{ $item->item_title }}</td>
<td>{{ $item->description }}</td>
<td>{{ $item->price }}</td>
<td>{{ $item->quantity }}</td>
<td>{{ $item->total }}</td>
<td>
<div class='btn-group'>
<form action="{{url('lineManagerUpdateRequests')}}" method="post">
<input type="radio" name="item_id[{{$item->request_id}}][]" value="2"> Approve
<input type="radio" name="item_id[{{$item->request_id}}][]" value="6"> Decline
</div>
</td>
@endforeach
<input type="submit" name="submit" class="btn btn-sm btn-danger">
</form>
这是我的控制器
foreach ($request->input('item_id') as $id => $value) {
$update = DB::table('request_items')
->where('id', $id)
->update('line_manager_remark', $value);
}
答案 0 :(得分:0)
而不是:
->update('line_manager_remark', $value);
试
->update(array('line_manager_remark' => $value));
或
->update(['line_manager_remark' => $value]);
因为update()
的参数必须是类型数组。