首页 > 解决方案 > Laravel 6 如何修复错误:即使我调用分页方法,方法 Illuminate\Database\Eloquent\Collection::links 也不存在?

问题描述

我想在一个表格中显示所有用户并对有说服力的结果进行分页。我在用户控制器中调用分页方法,如下所示:

$users=User::orderBy('id','DESC')->paginate(10);

并在此之后返回视图,例如:

return view('admin.users.index',compact('users'));

在我看来(index.blade.php)尝试使用刀片显示分页结果,例如:

<table>
    <thead>
        <th>id</th>
        <th>name</th>
        <th>email</th>
    </thead>

    <tbody>
        @if ($users->count()>0)
        @foreach ($users as $user)
        <tr>
            <td>{{$user->id}}</td>
            <td>{{$user->name}}</td>
            <td>{{$user->email}}</td>
        </tr>


        @endforeach
        @endif
    </tbody>
</table>

{{$users->links()}}

我尝试使用simplePaginate并得到相同的错误..通过删除 {{$users->links()}}工作正常。所以 paginator 方法有效,我得到了 Paginator 对象。这是带有在该路由中调用的方法的控制器:

namespace App\Http\Controllers;
use App\User;
use Illuminate\Http\Request;

class UsersController extends Controller
{
    public function index()
    {
        $users=User::orderBy('id','DESC')->paginate(10);
        return view('admin.users.index',compact('users'));    
    }
}

标签: phplaravelpaginationlaravel-6

解决方案


推荐阅读