YII2 模型查询 = 关联查询 + 模糊查询
控制器:
$searchModel = new SearchModel([
'model' => $this->modelClass,
'scenario' => 'default',
'relations' => ['record' => ['cabinet_serial','original_battery_serial','new_battery_serial'],'record.user' => ['realname','mobile']], // 关联表(可以是Model里面的关联)
'partialMatchAttributes' => ['record.cabinet_serial','record.original_battery_serial','record.new_battery_serial','record.user.realname','record.user.mobile'], // 模糊查询
'defaultOrder' => [
'id' => SORT_DESC
],
'pageSize' => $this->pageSize
]);
这里面 relations 就是关联的模型
record 是 主表 关联的 record 表record.user 是 record 表 关联的 user 表模型:主表中关联:/** * 获取订单信息 * 2020-7-21 18:40:30 lmy * @return \yii\db\ActiveQuery */ public function getRecord(){ return $this->hasOne(MemberUsePowerRecord::class,['id'=>'record_id']); }record表模型关联:
/** * 获取骑手 * 2020-6-17 11:36:42 lmy * @return \yii\db\ActiveQuery */ public function getUser(){ return $this->hasOne(\common\models\member\Member::class, ['id' => 'member_id']); }视图:
'record.cabinet_serial', 'record.door_id', [ 'attribute'=>'record.user.realname', 'label'=>'骑手姓名', ], [ 'attribute'=>'record.user.mobile', 'label'=>'骑手手机号', ], [ 'attribute'=>'record.original_battery_serial', ], [ 'attribute'=>'record.new_battery_serial', ],

发表回复