web系统开发中要实现某个用户角色的改变,怎样做才巧妙

绳木情况 2018-05-16 02:54:42
角色表(id,名称)中的id是自定义的,用户表通过角色id来确定当前是什么用户,比如说有A角色、B角色、C角色、A+B角色、A+C角色、B+C角色、A+B+C角色等,那么如果在不知道A+B角色Id的情况下,要将一个A角色变为A+B角色,程序怎样比较方便地得知A+B角色的角色id,或者是怎样比较方便的判断A+B角色中是否含有A角色。为了应对此类需求,有没有比较方便灵活的角色id的命名方式或者很方便求角色id之间是否有包含关系的算法?
...全文
511 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
绳木情况 2018-05-17
  • 打赏
  • 举报
回复
引用 5 楼 maradona1984 的回复:
[quote=引用 4 楼 qq_27642723 的回复:] [quote=引用 2 楼 maradona1984 的回复:] 你把角色和具体权限搞混了吧 用户跟角色多对多,角色跟具体权限多对多,都需要中间表的 通过关联获取用户具体拥有的权限,这个是比较通用的权限设计方案,如果你们系统有特殊情况另算
你好,我现在问的不是角色功能表该如何设计,我现在想咨询的是,以什么样的规则写系统中的各个角色id才能达到我的帖子里的需求,比如说在某种情况下,我需要判断A+B角色中是否含有A角色,如果我把角色id在程序里以数组的形式做一个记录是可以达到这个要求的,但是我想咨询一下大家有没有可能通过角色id的特殊写法就可以达到这个目的[/quote] id是varchar就直接拼字符串用逗号什么的隔开就行了,各种数据库都支持正则匹配的[/quote]好的好的,是个可以考虑的方法 感谢
maradona1984 2018-05-16
  • 打赏
  • 举报
回复
引用 4 楼 qq_27642723 的回复:
[quote=引用 2 楼 maradona1984 的回复:] 你把角色和具体权限搞混了吧 用户跟角色多对多,角色跟具体权限多对多,都需要中间表的 通过关联获取用户具体拥有的权限,这个是比较通用的权限设计方案,如果你们系统有特殊情况另算
你好,我现在问的不是角色功能表该如何设计,我现在想咨询的是,以什么样的规则写系统中的各个角色id才能达到我的帖子里的需求,比如说在某种情况下,我需要判断A+B角色中是否含有A角色,如果我把角色id在程序里以数组的形式做一个记录是可以达到这个要求的,但是我想咨询一下大家有没有可能通过角色id的特殊写法就可以达到这个目的[/quote] id是varchar就直接拼字符串用逗号什么的隔开就行了,各种数据库都支持正则匹配的
绳木情况 2018-05-16
  • 打赏
  • 举报
回复
引用 2 楼 maradona1984 的回复:
你把角色和具体权限搞混了吧 用户跟角色多对多,角色跟具体权限多对多,都需要中间表的 通过关联获取用户具体拥有的权限,这个是比较通用的权限设计方案,如果你们系统有特殊情况另算
你好,我现在问的不是角色功能表该如何设计,我现在想咨询的是,以什么样的规则写系统中的各个角色id才能达到我的帖子里的需求,比如说在某种情况下,我需要判断A+B角色中是否含有A角色,如果我把角色id在程序里以数组的形式做一个记录是可以达到这个要求的,但是我想咨询一下大家有没有可能通过角色id的特殊写法就可以达到这个目的
绳木情况 2018-05-16
  • 打赏
  • 举报
回复
引用 1 楼 lynmison 的回复:
有两种思路 (注:uid表示用户id,rid表示角色id) 第一种: 用户表 、角色表、用户角色表(uid、rid),uid和rid是一对多关系 第二种: 用户表、角色表,用户表里存了用户的角色信息,在用户表,你可以用json存储一个用户对应多角色关系。[{"rid",m},{"rid":n},...] 数据模型建立了,sql就不难写。
你好,我现在问的不是角色功能表该如何设计,我现在想咨询的是,以什么样的规则写系统中的各个角色id才能达到我的帖子里的需求,比如说在某种情况下,我需要判断A+B角色中是否含有A角色,如果我把角色id在程序里以数组的形式做一个记录是可以达到这个要求的,但是我想咨询一下大家有没有可能通过角色id的特殊写法就可以达到这个目的
maradona1984 2018-05-16
  • 打赏
  • 举报
回复
你把角色和具体权限搞混了吧 用户跟角色多对多,角色跟具体权限多对多,都需要中间表的 通过关联获取用户具体拥有的权限,这个是比较通用的权限设计方案,如果你们系统有特殊情况另算
天行归来 2018-05-16
  • 打赏
  • 举报
回复
有两种思路 (注:uid表示用户id,rid表示角色id) 第一种: 用户表 、角色表、用户角色表(uid、rid),uid和rid是一对多关系 第二种: 用户表、角色表,用户表里存了用户的角色信息,在用户表,你可以用json存储一个用户对应多角色关系。[{"rid",m},{"rid":n},...] 数据模型建立了,sql就不难写。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧