2015-10-06 2 views
0

Ниже приведена моя функция контроллера, а имя моей таблицы - User_deposit.if. Я не использую условие с моей таблицей. Я могу получить точный вывод для всех страниц. Но если условие места в моем запросе, то i может получить результат только для первой страницы.Laravel Nayjest datagrid pagination не работает со второй страницы

Контроллер Функция:

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 записей я получаю записи для первой страницы и нулевые записи на 2-й 3-й. .. страницы

ответ

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 

Это делает код более читаемым на мой взгляд.

Смежные вопросы