【问题标题】:How to retrieve 10 record per page rather whole data records using yajra laravel datatable如何使用 yajra laravel 数据表检索每页 10 条记录而不是整个数据记录
【发布时间】:2017-08-04 06:39:04
【问题描述】:

我有巨大的records 存储在database 中,需要time 才能加载(有时超过分钟)。

所以我考虑使用yajra laravel datatable (https://github.com/yajra/laravel-datatables)

问题:只有 10 个 records 必须来自 database 点击下一个按钮,下一个 10 条记录必须来。

这是我的文件:

web.php

Route::get('datatable', ['uses'=>'PostController@datatable']);
Route::get('datatable/getposts', ['as'=>'datatable.getposts','uses'=>'PostController@getPosts']);

控制器 => PostController.php

public function datatable()
{
    return view('datatable');
}
public function getPosts()
{
    $users = DB::table('data')->select('*');   
    return Datatables::of($users)->make(true);  

}

view => datatable.blade.php

<script type="text/javascript">
$(document).ready(function() {
    oTable = $('#users').DataTable({
        "processing": true,
        "serverSide": true,
        "ajax": "{{ route('datatable.getposts') }}",
        "columns": [
            {data: 'id', name: 'id'},
            {data: 'username', name: 'username'},
            {data: 'about', name: 'about'},
            {data: 'created_at', name: 'created_at'}
        ]
    });
}); 
</script>

请帮我提前谢谢!!!!!!

【问题讨论】:

  • $users = DB::table('data')->select('*')->paginate(10) 它也会为您提供分页数据。
  • @AshishPatel,我已经尝试过了,但是datatable 给出了一些像这样的错误DataTables warning: table id=users - Ajax error. For more information about this error, please see http://datatables.net/tn/7
  • @AshishPatel,没有分页工作正常,但加载时间太长!
  • 为什么不创建自己的分页?
  • @linktoahref,它正在工作,但下一条记录没有出现?你知道为什么吗?

标签: php laravel


【解决方案1】:
<script type="text/javascript">
$(document).ready(function() {
     $('#users').DataTable({
        "pageLength": 20,
        "processing": true,
        "serverSide": true,
        "ajax": "{{ route('datatable.getposts') }}",
        "columns": [
            {data: 'id', name: 'id'},
            {data: 'username', name: 'username'},
            {data: 'about', name: 'about'},
            {data: 'created_at', name: 'created_at'}
        ]
    });
}); 
</script>

试试这个

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    • 2016-01-31
    • 2020-08-08
    • 1970-01-01
    • 2019-05-04
    • 2015-03-11
    • 2015-01-26
    相关资源
    最近更新 更多