我使用CActiveDataProvider进行此查询。我的表包含15条满足条件的记录,但由于某种原因,只显示了10条记录。这里可能缺少什么。
$prov2 = new CActiveDataProvider('BaseSiReceivedItem', array(
'criteria' => array(
'condition' => 'iar_no = 0'
)));
echo count($prov2->data);
答案 0 :(得分:0)
'pagination'=>array(
'pageSize'=>15,
)
这现在告诉你15?
有关itemCounts的此链接也可能有所帮助。 Yii Pagination Variables from DataProvider
答案 1 :(得分:0)
视图文件中的listview小部件的pageSize值可能会覆盖控制器中的pageSize值(如果未设置,则默认值可能会覆盖控制器)。
或者,您可以创建如下自定义列表视图:
<强>扩展/ CustomListView.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'
)); ?>
答案 2 :(得分:0)
我也遇到过这个问题,在列表视图中禁用分页时只列出了10个项目。那时我使用了以下代码,并列出了所有项目:)
$data = new CActiveDataProvider('ProviderPortfolioSet', array('criteria' => $criteria, 'pagination' => false));