hasOne(self::class,'id','parent_id'); } public function getChildrenAttr() { return []; } public function getHasChildrenAttr() { $count = self::where('parent_id',$this->id)->count(); return $count ? true : false; } /** * @return \think\model\relation\HasMany|\think\model\relation\HasOne */ public function children() { return $this->hasMany(self::class, 'parent_id', 'id'); } }