Yii2 如何使用Yi2 ActiveDataProvider设置当前页面?

Yii2 如何使用Yi2 ActiveDataProvider设置当前页面?,yii2,Yii2,如何使用Yii2 ActiveDataProvider设置当前页面 上述方法中的Yii 1.1: 'pagination'=>array( 'pageSize'=>2, 'currentPage'=>1, ), 我认为最简单(也是最愚蠢的)的方法是在将所有内容加载到模型之前 $_GET['page'] = $_GET['page'] ? $_GET['page'] : 2; 这将由活动日期提供程序获取,并使用第2页作为默认页 或者,您可以直接链接到第二页,使列表直接

如何使用Yii2 ActiveDataProvider设置当前页面 上述方法中的Yii 1.1:

'pagination'=>array(
  'pageSize'=>2,
  'currentPage'=>1,
),
我认为最简单(也是最愚蠢的)的方法是在将所有内容加载到模型之前

$_GET['page'] = $_GET['page'] ? $_GET['page'] : 2;
这将由活动日期提供程序获取,并使用第2页作为默认页

或者,您可以直接链接到第二页,使列表直接转到第二页

echo Url::to(['post/index', 'page' => 2])

在Yii2中,您可以使用
分页
对象的属性
页面
,如下所述:

在数据提供程序集中

$dataProvider = new ActiveDataProvider([
        'query' => Product::find(),
        'pagination' => [
            'pageSize' => 2,
            'page' => 0
        ]
    ]);

$model = $dataProvider->getModels(); //Models in page 0
$dataProvider->pagination->page = 1; //Set page 1
$model = $dataProvider->refresh(); //Refresh models
$model = $dataProvider->getModels(); //Models in page 1
享受

$dataProvider = new ActiveDataProvider([
        'query' => Product::find(),
        'pagination' => [
            'pageSize' => 2,
            'page' => 0
        ]
    ]);

$model = $dataProvider->getModels(); //Models in page 0
$dataProvider->pagination->page = 1; //Set page 1
$model = $dataProvider->refresh(); //Refresh models
$model = $dataProvider->getModels(); //Models in page 1