go-admingo-admin
  • 指南
  • 开发
    • 进阶
    • 指令
  • 前端
  • 高阶
  • 授权
  • 帮助
  • GitHub
  • Changelog
⌘ K
快速上手
界面是怎么组织的
零基础做业务功能
配合 AI 来改
常见问题
最后更新时间:
Open-source MIT Licensed | Copyright © 2020-present
Powered by go-admin-team

TABLE OF CONTENTS

‌
‌
‌
‌

菜单不是写在前端代码里的

打开 go-admin-ui,登录之后侧边栏会出现一串菜单。这些菜单不是某个前端文件里写死的列表,而是登录时后端根据你的角色实时算出来、发给前端的。你在后台的"菜单管理"里勾选了什么,登录后侧边栏就出现什么;这也是为什么单纯改前端代码不会让一个新页面自动出现在菜单上——菜单和页面代码是两件分开配置的事,缺一不可。

这一点在实际开发里很关键:如果你新写了一个页面,打开浏览器却在侧边栏里找不到,先别怀疑代码写错了,大概率是菜单管理里还没有配这一项。

一个菜单对应一个页面

每一条菜单记录里都存着一个"组件路径",指向前端项目里的一个页面文件。点击菜单,前端就去加载对应路径下的那个页面。业务页面都放在项目的 src/views 目录下,一个文件夹通常对应一个业务模块,比如商品管理相关的页面就在 src/views/demo/product 目录里。

你不需要记住这些路径规则——用代码生成器生成新业务时,页面文件和菜单记录是配套一起生成的,两边自动对上。

页面里的操作按钮,也是配出来的

菜单管理里,除了页面本身,还能给页面配"按钮级"的权限,比如"新增""编辑""删除"这几个操作各自对应一个权限标识。页面代码里,每个操作按钮都绑定了这个标识;一个角色如果没有被授予对应的权限,登录后即使能看到这个页面,也看不到(或者点不动)没有权限的那个按钮。

也就是说,"能不能看到这个菜单"和"能不能点这个按钮"是两层分开的权限控制,都在后台的角色管理里配置,不需要改代码。具体怎么在界面上给一个角色分配这些权限,看配置角色权限这篇,里面有实际操作的截图。

一个常见的误解

用超级管理员账号登录时,所有菜单和按钮都能看到、都能点——这不代表权限系统"没在起作用",而是超级管理员这个角色本身不受权限检查约束。要验证权限配置是不是真的生效,得换一个非超级管理员的账号去测试,这一点在认证与鉴权里也提到过。

WARNING

从哪里获得帮助:

如果你在阅读本教程的过程中有任何疑问,可以前往提交建议。