我是 Yii 的新手,试图在主页上显示用户列表,但这样做时出现错误:未定义属性“CListView.userlist”。代码:SiteController.php
class SiteController extends Controller {
// This is the function which I changed reset is file remains same
public function actionIndex() {
$userlist = User::model()->findAllBySql($sql);
$this->render('index',array('userlist'=>$userlist,));
}
}
站点视图代码 index.php:
$this->widget('zii.widgets.CListView', array(
'userlist'=>$userlist,
'itemView'=>'_view',
));
在最后的 _view.php 中:
echo CHtml::encode($data->getAttributeLabel('id'));
目前在使用代码时出现错误:未定义属性“CListView.userlist”。但是如果我用 $dataProvider 替换 $userlist,错误会变为“致命错误:在 C:\devCenter\yii\framework\zii\widgets\CBaseListView.php 中的非对象上调用成员函数 getData() 在线107"
我有两个问题:
- $dataProvider 似乎有特殊含义,请告诉我这是为什么。
- 我将 $userlist 从 SiteController 传递给 index.php,然后传递给 $this->widget(),但是在 _view.php 中,变量更改为 $data,我错过了什么?我已经阅读了 Yii 网站上的文档,但我无法理解这一点。