Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
laravel中的数据表分页_Laravel_Laravel 5 - Fatal编程技术网

laravel中的数据表分页

laravel中的数据表分页,laravel,laravel-5,Laravel,Laravel 5,我正在使用laravel 5.0 我还使用datatable jquery插件来显示网格 控制器方法 public function index() { $jobs = \App\Job::orderBy('created_at', 'DESC')->limit(1000)->get(); return View::make('jobs.index', ['jobs' => $jobs]); } 问题是: 现在我在datatable网格中硬编码->限制(

我正在使用laravel 5.0 我还使用datatable jquery插件来显示网格

控制器方法

 public function index() {

    $jobs = \App\Job::orderBy('created_at', 'DESC')->limit(1000)->get();

    return View::make('jobs.index', ['jobs' => $jobs]);
}
问题是: 现在我在datatable网格中硬编码->限制(1000)到1000个作业以显示 但我有1000多条记录要显示

我想要什么? 我想用网格显示500条记录,然后再显示500条记录。 我不确定是否有任何回调数据表插件功能可用?
我需要一个动态的方式来加载下一个500

注: 我不愿意为我们提供这种滚动的解决方案 您可以使用:


或者。

您可以使用ajax数据源:

请浏览:

PHP脚本示例:

// function will process the ajax request
public function getMembers(Request $request) {

        $draw = $request->get('draw');
        $start = $request->get('start');
        $length = $request->get('length');


        $search = (isset($filter['value']))? $filter['value'] : false;

        $total_members = 1000; // get your total no of data;
        $members = $this->methodToGetMembers($start, $length); //supply start and length of the table data

        $data = array(
            'draw' => $draw,
            'recordsTotal' => $total_members,
            'recordsFiltered' => $total_members,
            'data' => $members,
        );

        echo json_encode($data);
    }
JavaScript示例:

$('#all-member-table').DataTable( {
        "processing": true,
        "serverSide": true,
        "ajax": {
            url: base_url+"ajax/members"
            },
            "columns": [
            { data: '1' },
            { data: '2' },
            { data: '3' },
            { data: '4' },
            { data: '5' },
        ]
    } );
HTML示例:

<table id="all-member-table">
            <thead>
                <tr>
                    <th>Column1</th>
                    <th>Column2</th>
                    <th>Column3</th>
                    <th>Column4</th>
                    <th>Column5</th>
                </tr>
            </thead>
  </table> 

专栏1
专栏2
第3栏
专栏4
专栏5

我认为上述答案应该通过搜索功能进行扩展

更新答案

$filter = $request->get('search');
$search = (isset($filter['value']))? $filter['value'] : false;
where('somecolumnonyourdb','like', '%'.$search.'%')

这对我有用

我需要一种动态方式来加载下一个500records@Peter那有什么问题?使用ajax加载前500条或后500条记录,代码与我之前展示的相同。我需要一个逻辑来加载前500条记录。所以我期待一些解决方案。有一个包用于此,搜索和排序方式如何?有一个包用于此
$filter = $request->get('search');
$search = (isset($filter['value']))? $filter['value'] : false;
where('somecolumnonyourdb','like', '%'.$search.'%')