请求无效页面时,Yii2分页返回最后一页

Dub*_*bby 4 php yii2

我正在使用ActiveDataProvider返回分页的结果,大多数情况下都可以正常工作。但是,如果有(例如)5个页面,而请求要求的页面超过5个,则我希望根本没有记录时,结果集就是第5页。

这是预期的行为吗?如果没有,我该如何解决?

示例代码:

return new \yii\data\ActiveDataProvider([
       'query' => $query,
       'pagination' => [
           'pageSize' => $perPage,
       ],
]);
Run Code Online (Sandbox Code Playgroud)

Beo*_*tor 6

简短的答案:这是预期的行为。

如果您有兴趣,则Paginationclass具有此validatePage属性,默认情况下为true。如果启用了页面验证功能,则页面设置将大于最后一页。

您可以将此参数设置为false,然后很可能在网格中得到零结果。