2017-09-27 7 views
0

동일한 페이지에 페이지 번호 매기기가있는 두 개의 kartik\grid\GridView 테이블이 있습니다. 첫 번째 테이블의 페이지를 변경하면 두 번째 테이블도 페이지가 변경됩니다. 동일한 $_GET 매개 변수 pageper-page을 공유합니다.두 개의 kartik grid GridView 테이블은 동일한 페이지 매김 변수를 공유합니다.

페이지 매김을 설정할 수있는 옵션은 변수 이름을 얻거나이 문제를 해결하는 다른 방법입니다.

감사합니다. 한 페이지에

+0

https://stackoverflow.com/questions/38168203/two-gridviews-in-one-view/38168821#38168821 –

답변

2

: 컨트롤러, 우리는 각 DataProvider에의 pageParam 및 sortParam 매개 변수를 설정합니다에서

.

2

여러 그리드

모든 Yii2 위젯은 너무 많은 다수의 GridView 위젯을 사용하는 몇 가지 변경 사항을 포함하는 간단한 작업이라고 그 안에 캡슐화하고있다.

실제로 DataProvider 모델 클래스로 사용자 정의 할 수없는 매개 변수는 현재 페이지 인덱스와 그리드를 정렬하는 데 사용되는 매개 변수를 정의하는 pageParam 및 sortParam입니다.

예를 들어 두 개의 다른 데이터 공급자 $ firstDataProvider 및 $ secondDataProvider로 채워진 두 개의 GridView가 있다고 가정합니다. pagination$pageSizeParam에 대한

$dataProvider = new ActiveDataProvider([ 
     'query' => $query, 
     'pagination' => [ 
      'pageParam' => 'nameOfYourParam', 
     ], 
     'sort' => [ 
      'sortParam' => 'nameOfYourSortParam' 
     ] 
    ]); 

같은 : 당신은 당신의 ActiveDataProviderpagination$pageParam을 설정해야

$firstDataProvider->pagination->pageParam = 'first-dp-page'; 
$firstDataProvider->sort->sortParam = 'first-dp-sort'; 

$secondDataProvider->pagination->pageParam = 'second-dp-page'; 
$secondDataProvider->sort->sortParam = 'second-dp-sort';