在 Laravel 中解析模型中的 Json 内容

Parse Json content in model in Laravel

我有付款和付款历史模型

Payment History:

class PaymentHistory extends Model
{
    public function subscription()
    {
        return $this->hasOne('App\Models\Payment', 'id','payment_id');
    }

}

Payment :

class Payment extends Model
    {
        public function PaymentHistory(){
        return $this->belongsTo('App\Models\PaymentHistory ','id','payment_id');
    }
    
    }

我在付款历史table中有一个名为响应的json列,我想return它在解码模型函数中的json数据后与每个行

我在控制器中的查询如下

 $data = User::with('Payment.PaymentHistory')->get();

我试图在付款历史模型中做这样的事情:

   public function json_response() 
    {
        return json_decode($json, TRUE);
    }

非常感谢任何帮助

我认为您可以在 PaymentHistory 模型

中为该列添加 $casts
protected $casts = ['column_name' => 'array'];

因此无需手动json编码或解码

参考:https://laravel.com/docs/8.x/eloquent-mutators#attribute-casting