我正在尝试将comment
表加入我的user
表,如comment.userId=user.id
不幸的是,当我print_r($this->user);
我一无所获。我在这做错了什么?
在我的评论模型中
public function relations()
{
return array(
'user' => array(self::BELONGS_TO, $this->module->user, 'userId'),
);
}
public function getLastName()
{
print_r($this->user);
die;
return is_null($this->user) ? '' : $this->user->{$this->module->lastNameAttribute};
}
,其中
$this->module->user = 'User'; //User is the model name
和
$this->module->lastNameAttribute = 'last_name';
在我看来
$comments = $model->getCommentDataProvider();
$comments->setPagination(false);
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$comments,
'itemView'=>'application.modules.comment.views.comment._view', //view file location
'emptyText' => '<div class="alert alert-info">No comments yet.</div>',
'summaryText' => '<h4>'.Yii::t('commentTitle','{n} comment|{n} comments',$comments->totalItemCount).'</h4>'
));
答案 0 :(得分:0)
我看到一个小错字,也许你在发帖时错了:
comment.userid=user.id
这里userid
与您userId
$comments = Yii::createComponent($this->module->commentModelClass)->with('user')->findAll($this->getCommentCriteria());
请查看
编辑 - 问题编辑后
我不熟悉CommentableBehavior,但在我看来,您需要在每个评论中急切加载用户模型:
with('user')
我在getComments()
方法