Php 搜索分页laravel结果
我的控制器中有一个搜索功能,但它不起作用 方法Illumb\Database\Eloquent\Collection::paginate不可用 存在 如何修复它?试试这个:Php 搜索分页laravel结果,php,laravel,laravel-5,eloquent,Php,Laravel,Laravel 5,Eloquent,我的控制器中有一个搜索功能,但它不起作用 方法Illumb\Database\Eloquent\Collection::paginate不可用 存在 如何修复它?试试这个: public function cari_user_status(Request $request) { $users = User::orderBy('created_at', 'DESC')->paginate(10); if ( ! empty($request->nama)
public function cari_user_status(Request $request)
{
$users = User::orderBy('created_at', 'DESC')->paginate(10);
if ( ! empty($request->nama))
{
$users = $users->where('name', $request->nama)->paginate();
}
return view('users.index', compact('users'));
}
您的“$request->nama”中也有一个输入错误,这是错误的原因,因为您正在对分页结果应用过滤器,即
$users = User::latest()
->when( ! empty($request->get('name')), function ($query) use ($request) {
return $query->whereRaw("UPPER(name) LIKE '%" . strtoupper($request->get('name')) . "%'");
})
->paginate(10);
return view('users.index', [
'users' => $users,
]);
像这样试试
$users = User::orderBy('created_at', 'DESC')->paginate(10);
if ( ! empty($request->nama))
{
// Problem is here $users is a collection of paginated result
$users = $users->where('name', $request->nama)->paginate();
}
public function cari_user_status(Request $request)
{
$users = (new User())->query();
if ( ! empty($request->nama))
{
$users->where('name', $request->nama);
}
$users = $users->orderBy('created_at', 'DESC')->paginate(10);
return view('users.index', compact('users'));
}