belongsToMany(SysRole::class, SysUserRole::class, 'role_id', 'user_id'); } public function menus(): BelongsToMany { return $this->belongsToMany(SysMenu::class, SysRoleMenu::class, 'menu_id', 'role_id'); } // 搜索定义 public function searchRoleNameAttr($query, $value): void { $value != '' && $query->where('role_name', 'like', '%' . $value . '%'); } public function searchRoleCodeAttr($query, $value): void { $value != '' && $query->where('role_code', 'like', '%' . $value . '%'); } public function searchCommentsAttr($query, $value): void { $value != '' && $query->where('comments', 'like', '%' . $value . '%'); } // 事件定义 public static function onAfterInsert(Model|SysRole $model): void { security_log_record([SysRole::class, 'onAfterInsert'], "添加了新角色", $model); } public static function onAfterDelete(SysRole $model): void { security_log_record([SysRole::class, 'onAfterDelete'], "角色{$model->role_name}被删除", $model); } }