**在项目中删除某个菜单时,提示存在子菜单(菜单已分配),不允许删除,如下:** ![](https://ucc.alicdn.com/images/user-upload-01/20201023115950263.png#pic_center) 查了一下源码:
public AjaxResult remove(@PathVariable("menuId") Long menuId){ if (menuService.selectCountMenuByParentId(menuId) > 0) { return AjaxResult.warn("存在子菜单,不允许删除"); } if (menuService.selectCountRoleMenuByMenuId(menuId) > 0) { return AjaxResult.warn("菜单已分配,不允许删除"); } return toAjax(menuService.deleteMenuById(menuId)); }
发现都是关联到role,这个怎么解决呢? 项目里有个角色管理模块,把关联要删除菜单的角色取消关联菜单,再次删除就可以了。 角色管理在这: