'array' ]; // 子路由关系 public function subs() { return $this->hasMany(RouteModel::class, 'parent_id', 'id')->whereRaw(RouteService::getStateToWhereRaw())->orderBy('index'); } // 父路由关系,可选,如果你需要从子路由访问父路由 public function parent() { return $this->belongsTo(RouteModel::class, 'parent_id', 'id'); } public function getSubsAttribute($value) { return array_map(function ($sub) { return new self($sub); }, json_decode($value, true)); } public function setSubsAttribute($value) { $this->attributes['subs'] = json_encode($value); } }