when(isset($search['id']) && $search['id'] !== '',function($query) use ($search){ $query->where('id',$search['id']); }) ->when(isset($search['uid']) && $search['uid'] !== '',function($query) use ($search){ $query->where('uid',$search['uid']); }) ->with([ 'user' => function($query){ $query->field('uid,nickname,avatar'); } ]); } }