Yii 网格视图不会显示其各自表中的所有数据


yii gridview does not display all the data from its respective table

我使用 CActiveDataProvider 进行了此查询。我的表包含 15 条满足条件的记录,但由于某种原因,只显示 10 条记录。这里可能缺少什么。

$prov2 = new CActiveDataProvider('BaseSiReceivedItem', array(
            'criteria' => array(
            'condition' => 'iar_no = 0'
            )));
echo count($prov2->data);
'pagination'=>array(
'pageSize'=>15,
)

现在显示 15 个吗?

这个关于itemCounts的链接也可能有所帮助。Yii 分页变量来自 DataProvider

视图文件中列表视图小部件的 pageSize 值可能会覆盖控制器中的 pageSize 值(如果未设置,默认值可能会覆盖控制器)。

或者,您可以创建如下自定义列表视图:

扩展/自定义列表视图.php

<?php
Yii::import('zii.widgets.CListView');
class CustomListView extends CListView {
    public function init() {
        if ($this->dataProvider !== null)
            $this->dataProvider->pagination->pageSize = 30;
        parent::init();
    }
}

并在您的视图中使用它:views/{model}/index.php

<?php $this->widget('CustomListView', array(
        'dataProvider' => $dataProvider,
        'itemView' => '_view'
)); ?>

我也遇到了这个问题,只列出 10 个项目,同时从我的列表视图中禁用分页。当时我使用以下代码,并得到了列出的所有项目:)

$data = new CActiveDataProvider('ProviderPortfolioSet', array('criteria' => $criteria, 'pagination' => false));