laravel 模型 追加字段
给 laravel 模型追加自定义的字段
第一步:定义追加字段名
//追加字段
protected $appends = ['pic'];
第二步:使用获取器,编写对追加字段操作的获取器
public function getPicAttribute($key)//此处的Pic与追加字段'pic' 相对应
{
$arr = explode('#', $this->attributes['fang_pic']);//这里是数据库原有字段,就是对这个字段进行相关更改的
return 'aaa'.$arr[0];
}
第三步:调用
我们都知道,获取器是在获取该字段的时候,对该字段进行相关操作,从而得到我们想要的结果,所以这里,要想用追加字段,必须要获取‘fang_pic’该字段,换句话说,就是说,你必须从数据库取f'ang_pic’
这样pic 才有用,
原因说明:
$arr = explode('#', $this->attributes['fang_pic']);
你在这里使用了该字段或者说调用了该属性,所以必须建立在获取 fang_pic 的前提下,pic才会正常显示,否则报错
那理所应当的,当你未在 pic 获取器中调用 fang_pic 属性,也就无须关心 fang_pic