第一次接触 bunny-admin-server 时,最容易卡住的不是接口写法,而是权限和菜单关系没看明白。这个项目把角色、权限和路由拆得比较开,理解表之间的职责,比死记 SQL 更重要。
先分清权限和路由不是一回事
权限更偏后端接口控制,路由更偏前端菜单和页面可见性。一个用户即使接口权限没问题,如果角色没分配到对应路由,登录后也可能看不到菜单。
角色是中间层
用户不会直接挂一堆权限和菜单,通常都是先关联角色,再由角色去关联权限和路由。所以排错时,先查用户角色关系,再查角色到底拥有哪些能力。
新增一个菜单时通常要补什么
常见做法是新增角色或复用既有角色,再补权限表、路由表,以及相应的角色关联关系。只建菜单页面但不补角色路由,前端往往是看不到的。
排错时先看哪一步
如果是“接口能调但页面不显示”,优先查路由和角色路由;如果是“页面能看到但接口报无权”,优先查权限和角色权限。这样定位会比全库乱翻更快。
结论
bunny-admin-server 的权限模型可以先抓住一条主线:用户挂角色,角色再分别关联后端权限和前端路由。
正文完




