案例回放
需求:我只要取profile中的某些字段进行进一步操作。
我们查询到了资料表
$profile = Profile::where('user_id', session('index_user_id'))->field(['avatar','nickname','bio'])->find();
Profile模型中有定义一个一对一的关联关系
public function old()
{
return $this->hasOne(ProfileOld::class);
}
查看关联数据
dd($profile->old);
结果是 null
解决方案
使用hidden、visible和append 来对结果集进行控制
//查询出老的资料数据
$profile = Profile::where('user_id', session('index_user_id'))->find();
$needArr = $profile->visible(['avatar','nickname','bio'])->toArray();