我使用 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));