我希望用搜索栏创建一个客户页面。如果未进行任何搜索,则会返回所有。下面的代码显示了我的控制器中的内容。
public function index(Request $request)
{
if(($term = $request->get('term'))){
$customers = customers::where('name', 'like', '%' .$term.'%');
}
else{
$customers = customers::all();
}
return view ("customers.index")->with('customers',$customers);
}
全部在加载时返回,但在搜索时,视图中的表格中不显示任何内容。 没有错误,表单传递数据,它只是在搜索后不加载视图中的数据。
以下是视图的代码。
<tbody>
@foreach ($customers as $customer)
<tr>
<th>{{$customer->id}}</th>
<td>{{$customer->business}}</td>
<td>{{$customer->name}}</td>
<td><a href="{{ route ('customers.show', $customer->id)}}" class="btn btn-default">View</a></td>
</tr>
@endforeach
</tbody>
感谢。
答案 0 :(得分:3)
您在搜索结束时缺少get()
方法。它应该是:
$customers = customers::where('name', 'like', '%' .$term.'%')->get();
根据结果返回collection
。