Laravel 5 将自定义属性添加到json响应

Laravel 5 将自定义属性添加到json响应,laravel-5,Laravel 5,我有一个带有自定义属性的模型 class MyModel extends Model { public function getExtraAttribute(){ return 'some string'; //etc. } } 对于控制器方法,我有这个 return MyModel::where('user_id', Auth::user()->id)->get(); 但我在json响应中没有看到'extra'属性 p.s.extra不是数据库中

我有一个带有自定义属性的模型

class MyModel extends Model
{
    public function getExtraAttribute(){
        return 'some string'; //etc.
    }
}
对于控制器方法,我有这个

return MyModel::where('user_id', Auth::user()->id)->get();
但我在json响应中没有看到'extra'属性


p.s.extra不是数据库中的列

将属性添加到
$appends

class MyModel extends Model {
    ...    
    /**
     * The accessors to append to the model's array form.
     *
     * @var array
     */
    protected $appends = ['extra'];
    ...
}
根据此处的文件:

class User extends Model
{
     protected $appends = ['extra'];

     public function getExtraAttribute()
     {
        return $this->attributes['extra'] == 'some string...';
     }
}