我正在尝试将此模型范围传递到我的CListView
这是我的评论模型中的范围
public function scopes()
{
return array(
'lastestComment'=>array(
'alias' => 't',
'select'=>array('t.*,t2.*'),
'join'=>'JOIN `comments_posts` AS t2',
'condition'=>'t.id=t2.commentId',
'order'=>'t.createDate ASC',
'limit'=>'5'
)
);
}
在我看来我有这个
$dataProvider=new CActiveDataProvider(Comment::model()->lastestComment());
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view', //view file location
));
在视图中,然后我调用$data
我只能在comments
模型中获取值,而不能从我的范围连接中的comments_post
表中获取值。有什么想法吗?
答案 0 :(得分:0)
你不必为实现你想要的东西而复杂化,
YII总是很简单
model
中的
public function relations() {
return array(
'posts' => array(self::HAS_MANY, "CommentPosts", array("commentId" => "id")),
);
}
在view
中您可以将comment table
中的数据作为
$data->column_name
和comment_post table
中的数据为
foreach($data->posts as $postings){
$postings->column_name;
}