php - Yii2 分页在请求无效页面时返回最后一页

标签 php yii2

我正在使用 ActiveDataProvider 返回分页结果,大部分情况下都可以正常工作。但是如果有(例如)5 页并且请求要求任何超过 5 页的页面,结果集是第 5 页,而我预计根本没有记录。

这是预期的行为吗?如果不是,我可以尝试修复它吗?

示例代码:

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

最佳答案

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

如果您有兴趣,Pagination 类有这个 validatePage默认情况下为 true 的属性。如果启用了页面验证,那么如果页面大于该页面,您会将页面设置为最后一页。

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

关于php - Yii2 分页在请求无效页面时返回最后一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32942458/

相关文章:

yii2 - 在 Yii2 中创建拇指

php - Apache 403 上传文件时被禁止

php - 从多个 mysql 表构建 bootstrap 4 导航菜单

php - 使用 python 在 php 表单上自动提交文件

php - 如何在php编码中设置默认值

yii2 - 如何重新加载多个 pjax

PHP yii 2,有没有办法预取带有条件的相关模型

php - 在 yii 2 中构建 'AND' 查询

mysql - 从 yii2 中的 Db 获取不同的行

对象上的 Javascript 在 DataTable 行中不起作用