【发布时间】:2017-11-03 07:43:11
【问题描述】:
这是我的代码,但它只输出最后插入的用户。我的意思是它不显示注册到特定企业的其他用户。用户应该只看到在他的公司注册的用户。在此先感谢
我正在使用yii2 高级。
我有 3 张桌子
- 第一个表 - user_tbl(user.id、user.username、user.email)
- 第二张表 - userinfo_tbl(info.id, info.userid, info.business id)
-
第三张表 - Business_tbl(business.id, business.name)
public function search($params) { //current user logedin $CurrentUserID = Yii::$app->user->getId(); //Find business to which current user is registered $BusinessID = Yii::$app->mycomponent->getBusinessID($CurrentUserID); //Now find all the users with this business id $BusinessUsers= Yii::$app->mycomponent->getBusinessUsersID($BusinessID); foreach ($BusinessUsers as $BusinessUser) { $UID=$BusinessUser['user_id']; } $query = User:: find()->where(['id'=>$UID]); $dataProvider = new ActiveDataProvider([ 'query' => $query, 'sort'=> ['defaultOrder' => ['id'=>SORT_ASC]], 'pagination' => [ 'pageSize' => $this->_pageSize, ] ]);
【问题讨论】:
-
请告诉我们
getBusinessUsersID方法代码。在 foreach 中,您每次都分配$UID=并覆盖最后一个值。就目前而言,这段代码毫无意义。 -
$UID[] = $BusinessUser['user_id'];