在具体的开发过程中可能会需要用到权限,比如不同的用户拥有不同的角色,不同的角色又拥有不同的可见菜单。下面是两种常见的角色表的设计:
用户表----->> 用户角色表(关联用户和角色)------>>角色表--------->>角色菜单表(关联角色和菜单)------------>>菜单表
设计如下:
2、上面的这种设计有一个弊端,就是只能控制到菜单的权限,假如某个用户拥有一个菜单的权限,但是没有该菜单下的添加或者编辑权限,就不能实现了。所以下面这种设计可能避免这个问题。
用户表----->> 用户角色表(关联用户和角色)------>>角色表--------->>角色权限组表(关联角色和权限组)------------>>权限组表(下面对应菜单表)----------->>菜单表