0

kartik\grid\GridView在同一页面上有两个带有分页的表格。当我更改第一个表的页面时,第二个表也会更改其页面。它们共享相同的$_GET参数pageper-page

设置分页的任何选项都可以获取变量名或解决此问题的任何其他方式。

谢谢。

4

2 回答 2

2

一页上有多个网格

每个 Yii2 小部件都封装了这么多,以至于使用多个 GridView 小部件是一个简单的活动,只需要进行很少的更改。

唯一不能使用 DataProvider 模型类自定义的参数是 pageParam 和 sortParam,它们定义了当前页面索引和用于对网格进行排序的参数。

例如,假设我们有两个 GridView,其中填充了两个不同的数据提供者,$firstDataProvider 和 $secondDataProvider。

在控制器中,我们将设置每个 DataProvider 的 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';
于 2017-09-27T13:12:15.790 回答
2

你必须$pageParampagination你的ActiveDataProvider

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

相同的$pageSizeParamin pagination

于 2017-09-27T13:13:12.017 回答