为laravel eloquent集合添加新属性

时间:2017-09-16 10:10:02

标签: laravel-5 model eloquent attributes

我想在我的雄辩模型中推出一个额外的计算属性 我希望在我的刀片中使用它$user->avatarImg 我的模型方法看起来像

 public function avatarImg()
 {

     if($this->hasMedia('avatar')) {
         $image = $this->getMedia('avatar');
         $img = \Intervention\Image\ImageManagerStatic::make($image[0]->getPath())->encode('data-url');
     }
     elseif ($this->blob->file) {
         $img = 'data:image/jpeg;base64,'. base64_encode($this->blob->file);
     } else {
         $img = '';
     }


     $this->user->put('avatarImg', $img);

     dd($this->user);

     return $img;

 }

但我尝试的不起作用我得到了:

Call to a member function put() on null 

我该如何正确地做到这一点?

1 个答案:

答案 0 :(得分:0)

您的模型中似乎不存在属性user。 如果这是用户模型,请尝试

$this->put('avatarImg', $img);