加入收藏 | 设为首页 | 会员中心 | 我要投稿 站长网 (https://www.ijishu.cn/)- CDN、边缘计算、物联网、云计算、开发!
当前位置: 首页 > 运营中心 > 产品 > 正文

110年血泪:三级分类,让权限混乱见鬼去吧

发布时间:2026-10-10 23:14:07 所属栏目:产品 来源:DaWei
导读:  我原以为三级分类是老东西了——结果去年4月份周一下午,还在项目评审会上踩了这坑。  那天下午三点整,会议室的投影还飘着前一个需求的残标,开发老李的手指在触控板上顿了三秒,把刚拉的权限树拆成三个层级,指着最后

  我原以为三级分类是老东西了——结果去年4月份周一下午,还在项目评审会上踩了这坑。


  那天下午三点整,会议室的投影还飘着前一个需求的残标,开发老李的手指在触控板上顿了三秒,把刚拉的权限树拆成三个层级,指着最后那层的“操作权限”喊,这鬼东西,上周刚改的三个角色,又串了八个菜单项,测试组的小周已经把冒烟 case 打回第五次了。


  我接过鼠标,点着树里那些看起来规规矩矩的“商品-数码-手机”“订单-线上-已完成”,突然反应过来问题在哪——是三层的天然冗余,把权限的逻辑直接泡软了。


  我原以为权限要卡到每个节点,结果三层分类的结构,让“手机”的删改权限,会自动漏到“已完成订单”的查询里,因为分类是套叠的,权限没跟业务属性绑定,只跟树的层级挂钩。


  我原以为这种坑五年前就填了,结果这项目是新组的,没人碰过之前的老代码,他们照着旧文档抄的分类权限,连自己都没意识到这是把十年前的故障,又原封不动拉出来用了。


  我原以为改个“排除节点”的配置就能搞定,结果老李皱着眉说,上周试了,刚把“手机”权限从“已完成订单”里摘出来,转头“平板”的权限又串到“退款”上了,因为分类的父节点权限是默认往下飘的,要改就得加个几十行的判断,专门拦着第三层的权限不往下传,这不是优化,是补窟窿。


  我原以为能在评审会上拍板改,结果产品经理王姐翻着需求单,说之前的运营用惯了三级分类,“商品-数码-手机”比“数码商品-手机”看着清楚,改了分类,运营要重新理权限,怕赶不上上线的deadline。


  我原以为最后会妥协,结果老李把测试截图甩在桌上,那是个刚测的bug:用“财务”角色登录,能删“手机”的商品,也能改“已完成订单”的状态,这是三级分类权限飘的锅,把分类拆成“数码商品”和“手机”两个层级,权限就不会串了,他对着投影画了个新树,第二级是业务属性,第三级只放业务模块,权限只卡到第二级,第三级不往下飘,这才是对的。


  我原以为会有人质疑改了分类会不会影响运营,结果王姐盯着那新树看了五分钟,说运营那边的老分类是用来做菜单的,权限跟菜单分类是两码事,权限归权限,菜单归菜单,没必要绑在一块,分类要按业务逻辑拆,权限要跟角色的实际职责挂,别让分类当权限的背锅侠。


文章配图,仅供参考

  我原以为这只是单个项目的小问题,结果翻了下之前的项目记录,哪年做的那个电商系统,也是用的三级分类权限,三个月后就出现了“客服”角色能改“商品价格”的故障,后来查了一周才找到,是分类的父节点权限串了,那时候也是这么改的,把第三层的权限屏蔽,问题就解决了。


  我原以为“优胜劣汰”只是句空话,结果这三级分类的权限,就是被自己的冗余结构淘汰的——它为了方便菜单展示搞了三层,却把权限的逻辑泡没了,就像你给电脑装了个多余的系统,占用资源不说,还经常串程序,最后肯定得拆。


  我原以为会有人说三级分类好用,结果老李说,他之前碰的项目里,三级分类的权限从来没顺当过,每次改需求就得重新捋权限,少则半天,多则好几天,测试还经常漏测串权限的情况,每次上线都要提心吊胆。


  我原以为改了结构就万事大吉,结果王姐突然插了一句,说运营那边的分类是按层级分的,菜单要跟分类同步,不能改得太急,不然运营得重新理菜单,她还说,新树的分类得留着运营用的菜单层级,别把分类全改了,只是把权限的层级往上提了一级,这样两边都不耽误。


  我原以为这只是权限的问题,结果老李说,之前的三级分类,连数据统计都受影响,按分类查数据的时候,会把无关的节点算进去,因为分类是套叠的,统计的时候没加过滤条件,最后出了报表错误,还得找人重新算,这都是冗余结构带来的连锁麻烦。


  我原以为架构就是搭框架,结果那天才明白,架构是要把坑填上,别让后来人踩,三级分类的权限,就是个没填的坑,每个用它的项目,迟早要踩一次,与其让大家踩,不如早改了,省得后面的人再花时间补窟窿。


  我原以为会有很多人反对改三级分类,结果那天评审会开了不到一个小时,就定了改,王姐说,上线后要是运营有意见,就再调菜单,权限的事,先搞定了再说,毕竟总比出了故障再救火强。


  我原以为这是个大动作,结果就是把权限的层级从三级缩到二级,把第三层的分类只用来做菜单展示,不关联权限,改完后,老李说,终于不用再怕权限串了,测试的小周也说,冒烟 case 至少能减一半。


  我原以为会有后遗症,结果上线后,运营那边没说啥,只是菜单的顺序调了调,权限的问题没再出,直到现在,项目组也没再为权限的事吵架,这才是真正的解决问题,而不是捂着问题不让说。


  我原以为“优胜劣汰”是说人,结果那天才明白,结构也会被淘汰,没用的结构,不管用多少年,迟早会被换掉,三级分类的权限,就是这样,它不是不好,是不适合现在的需求,该换就得换,别抱着老东西不放,不然只会给自己找麻烦。


  我原以为会有很多人不知道三级分类的坑,结果那天才发现,很多项目组都是照着旧文档抄,根本没试过改,也不知道这坑在哪,所以才会一踩再踩,我那天回去,把这些记录整理了一下,放在了项目的wiki上,下次再碰三级分类的权限,就能绕开这个坑了。


  我原以为架构师就是要搞大创新,结果那天才明白,架构师就是要把这些坑找出来,填上,别让后来人再踩,三级分类的权限,就是个典型的坑,我踩过了,就得告诉别人,别再踩了,这才是做架构的意义,不是搭个漂亮的框架,是让项目能顺顺当当地跑下去。

(编辑:站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章