为CArrayDataProvider设置自定义键属性?

时间:2013-02-26 10:22:43

标签: yii

我有:

$dataProvider = new CArrayDataProvider ($items , 
  array(
    'pagination'=>array(
      'pageSize'=> 10,
  ),
));

我渲染:

$this->widget('zii.widgets.CListView', array(
  'dataProvider'=> $dataProvider,
  'itemView' => 'items',
  'summaryText' => '',
  'emptyText' => '
  ', 
));

问题是它对数据集中的ID抱怨。它希望它被称为“id”。所以我认为:

Undefined property: stdClass::$id
C:\wamp\www\yii\web\CArrayDataProvider.php(108)

如何更改它以便使用“itemid”而不是“id”作为列引用?

1 个答案:

答案 0 :(得分:1)

设置数据提供者的keyField属性:

$dataProvider = new CArrayDataProvider ($items , 
  array(
    'keyField' => 'itemid',
    'pagination'=>array(
      'pageSize'=> 10,
  ),
));