Laravel Nayjest数据网格分页无法从第二页开始工作

时间:2015-10-06 12:28:12

标签: laravel-5

下面是我的控制器功能,我的表名是User_deposit.if我不使用条件与我的表我可以获得所有页面的确切输出。但如果在我的查询中放置条件,那么我只能得到第一页的结果。

控制器功能:

  public function admin_user_dep_report(){

    $id = Input::get('name_id');

     $cfg = (new GridConfig())
        ->setDataProvider(new EloquentDataProvider(\App\User_deposit::query()->where('user_id',$id)))
        ->setName('user_deposits_page')
       ->setPageSize(5)

        ->setColumns([
              new IdFieldConfig,

            (new FieldConfig)
             ->setName('amount')
            # will be displayed in table heder
            ->setLabel('Amount')

            ,

            (new FieldConfig)
            ->setName('agent_verified')
            # will be displayed in table heder
            ->setLabel('Agent Verified')
            ->setCallback(function ($val,$row) {

                $user = $row->getSrc();
                return  $user->getAgent->first_name;

            })




        ]);
   $grid = new Grid($cfg);
    $grid = $grid->render();



return view('admin.user_deposit_reports')->with('cfg',$grid);
}

查看文件:

   <div class="container">

       <?php echo $cfg; ?>


</div>

注意: 我的表有超过20个条目我正在获取第一页的记录,而第二个第3页的空记录

1 个答案:

答案 0 :(得分:1)

根据我在setName属性中使用非字母字符并使其太长的经验不起作用。当我在名字变量中添加空格时,我已经看到了你所描述的行为。

尝试更改以下内容:

$cfg = (new GridConfig())
    ->setDataProvider(new EloquentDataProvider(\App\User_deposit::query()->where('user_id',$id)))
    ->setName('user_deposits_page')
   ->setPageSize(5)

类似于:

$cfg = (new GridConfig())
    ->setDataProvider(new EloquentDataProvider(\App\User_deposit::query()->where('user_id',$id)))
    ->setName('userdeposits')
   ->setPageSize(5)

另外,试着把:

use App\User_deposit;

在文件的顶部,然后更改:

\App\User_deposit

为:

User_deposit

这使得代码在我看来更具可读性。