laravel 5.6 数据表分页不起作用

laravel 5.6 datatable pagination not working

我正在使用 laravel 5.6 并尝试将分页添加到 bootstrap 数据表。但这不是 working.I error.Please 帮我找出我犯的错误。

错误

Method Illuminate\Database\Eloquent\Collection::links does not exist.

designation.blade.php(查看)

 @if(count($designations)>=1)
    <table class="table table-dark" id="designationTable">
        <thead>
        <tr>
            <th scope="col">#</th>
            <th scope="col">Designation Type</th>
            <th scope="col">Status</th>
            <th scope="col">Create At</th>
            <th scope="col">Action</th>

        </tr>
        </thead>
        @foreach ($designations as $designation)
        <tbody>
        <tr>
            <th scope="row">{{$designation->id}}</th>
            <td>{{$designation->designation_type}}</td>
            <td>{{$designation->status}}</td>
            <td>{{$designation->created_at}}</td>
            <td>
              <button type="" class="btn btn-secondary" id="btn_update_designation">Update</button>
            </td>
        </tr>
        </tbody>
        @endforeach
    </table>
    {{ $designations->links() }}
  @endif

DesignationController.php

namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use DB;
use App\Designation;

class DesignationController extends Controller
{
    public function index()
    {
       $designations = Designation::all();
       return view('pages.designation')->with('designations',$designations);
    }
}

您应该在控制器文件中使用 paginate() 方法。

public function index()
{
    $designations = Designation::paginate(10);
    return view('pages.designation')->with('designations',$designations); 
}

Paginating Eloquent Results

You may also paginate Eloquent queries. In this example, we will paginate the User model with 15 items per page. As you can see, the syntax is nearly identical to paginating query builder results:

$designations = Designation::paginate(15);

You may call paginate after setting other constraints on the query, such as where clauses:

$designations = Designation::where('column', 'value')->paginate(15);

您应该在控制器文件中使用 paginate() 方法。

public function index()
{
    $designations = Designation::paginate(15);
    return view('pages.designation')->compact('designations',$designations); 
}