with() 用法注意

$TourismBarrage = CenterSharing::find()->select('user_id,nickname')
->with('user')
->groupBy('nickname')
->asArray()
->all();
在CenterSharing的模型中:
   public function getUser()
{
return $this->hasOne(UserWechat::className(),['unionid'=>'user_id'])
->select('unionid,avatar');

}

with连表注意

1. 若这样写
   public function getUserWechat()
{
return $this->hasOne(UserWechat::className(),['unionid'=>'user_id'])
->select('unionid,avatar');

}
报错: 类名重复 (粉红色标注)

2. select('unionid') (绿色标注)
  这个必须写,因为你 用到了 ['unionid' => 'user_id'],   不写的话,照样报错


posted on 2018-10-24 17:11  刷哥  阅读(321)  评论(0编辑  收藏  举报

导航