//控制器 class DevinfoController extends Controller { public function actionIndex() { //定义数组 $data = []; $lists = Aps::find()->with('building','square','square.locationid')->asArray()->all(); if($lists){ foreach ($lists as $key=> $list) { $data[$key]['dev_code'] = $list['building_id']; $data[$key]['dev_name'] = $list['building']['building_name']; $data[$key]['location_id'] = $list['square']['locationid']['location_id']; $data[$key]['ap_mac'] = $list['mac']; } //销毁其他数据 unset($lists); } return json_encode($data); } }
建筑模型building.php
public function getAps() { return $this->hasMany(Aps::className(), ['building_id'=>'id']); }
广场模型square.php
/** * 关联地区表 * @return \yii\db\ActiveQuery */ public function getLocationid() { return $this->hasOne(SysLocationInfo::className(), ['location_id'=>'location_id']); }