简体   繁体   English

laravel 5.6 数据表分页不起作用

[英]laravel 5.6 datatable pagination not working

I'm using laravel 5.6 and try to add pagination to bootstrap datatable.我正在使用 laravel 5.6 并尝试将分页添加到引导数据表。 But it's not working.I got error.Please help me to find mistake I did.但它不起作用。我有错误。请帮我找出我做的错误。

Error错误

Method Illuminate\\Database\\Eloquent\\Collection::links does not exist.方法 Illuminate\\Database\\Eloquent\\Collection::links 不存在。

designation.blade.php(View) 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名称控制器.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);
    }
}

You should use the paginate() method in your controller file.您应该在控制器文件中使用 paginate() 方法。

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

Paginating Eloquent Results 分页 Eloquent 结果

You may also paginate Eloquent queries.您还可以对 Eloquent 查询进行分页。 In this example, we will paginate the User model with 15 items per page.在这个例子中,我们将用每页 15 个项目对 User 模型进行分页。 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:您可以在对查询设置其他约束后调用 paginate,例如 where 子句:

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

You should use the paginate() method in your controller file.您应该在控制器文件中使用 paginate() 方法。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM