2017-09-27 3 views
0

同じページにページ番号を付けた2つのkartik\grid\GridViewテーブルがあります。最初の表のページを変更すると、2番目の表もそのページを変更します。それらは同じ$_GETパラメータpageper-pageを共有します。2つのkartik grid GridViewテーブルが同じページ分割変数を共有します

ページネーションを設定するオプションは、この問題を解決するための変数名やその他の方法を取得します。

ありがとうございました。 1ページ

+0

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

答えて

2

あなたのActiveDataProviderpagination$pageParamを設定する必要があります。

pagination$pageSizeParamのための同じ
$dataProvider = new ActiveDataProvider([ 
     'query' => $query, 
     'pagination' => [ 
      'pageParam' => 'nameOfYourParam', 
     ], 
     'sort' => [ 
      'sortParam' => 'nameOfYourSortParam' 
     ] 
    ]); 

2

複数のグリッド

すべてYii2ウィジェットはそんなに複数のGridViewのウィジェットを使用すると、いくつかの変更を行う必要シンプルな活動であること、それにカプセル化しています。

実際にDataProviderモデルクラスでカスタマイズできないパラメータは、現在のページインデックスとグリッドの順序付けに使用されるパラメータを定義するpageParamとsortParamだけです。

例えば、2つの異なるデータプロバイダ$ firstDataProviderと$ secondDataProviderで2つのGridViewが作成されているとします。コントローラで

、私たちはそれぞれのデータプロバイダのpageParamとsortParamパラメータを設定します:

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

$secondDataProvider->pagination->pageParam = 'second-dp-page'; 
$secondDataProvider->sort->sortParam = 'second-dp-sort'; 
関連する問題