请解决我的问题 我正在使用如下的Clistview
$this->widget('zii.widgets.CListView', array(
'id'=>'yii-list',
'dataProvider'=>$model,
'itemView'=>'_remark_list',
//'template'=>'{pager}<div class="fleft"><b>{sorter}</b></div><div class="fright">{summary}</div><div class="clear"></div><div class="rightInner"><h1>Search Result</h1>{items}</div>{pager}',
'enableSorting' => true,
//'sortableAttributes'=>array(
// 'email_id'=>'email_id',
//),
'afterAjaxUpdate'=>'function(id,data) {
$("a#manage-inline").fancybox({"scrolling":"auto","titleShow":false,"width":"850px","height":"500px"});
}',
));
我得到了这样的错误 致命错误:在非对象上调用成员函数getData() 在 dataProvider
中在dataprovider中写什么。
这是我的控制器
public function actionViewEmailLog($id, $layout=false)
{
$model = EmailArchive::model()->findAll('email_id =:data', array(':data'=>$id));
$this->layout = false;
$this->render('ViewEmailLog',array('model'=>$model));
}
PLZ很快帮助我 提前谢谢
答案 0 :(得分:3)
从控制器,您需要将数据提供者传递给视图:
$dataProvider = new CActiveDataProvider('Model');
$this->render('index', array(
'dataProvider' => $dataProvider,
));
您可以粘贴正在呈现此视图的Controller的操作吗?
看到控制器代码后,更新,你必须这样打电话:
$dataProvider = new CActiveDataProvider('EmailArchive', array(
'criteria' => array(
'condition' => 'email_id=:id',
'params' => array(':id' => $id)
)));
$this->render('ViewEmailLog', array('dataProvider' => $dataProvider));