phpcms--权限问题,父栏目权限应用到子栏目不管用

其实这个问题后来发现官方bbs上有解决,和自己实现的方法本质一样,我是增加的更多的代码来直接修改category_priv表

看到官方上面的方法后感觉自己的实现太麻烦,这里复制官方的方法



修复方法:
在 /phpcms/modules/admin/category.php 中

  1. foreach ($arrchildid_arr as $arr_v) {
  2.        $this->update_priv($arr_v, $_POST['priv_groupid'], 0);
  3.       }
复制代码

改为
  1. foreach ($arrchildid_arr as $arr_v) {
  2.        $this->update_priv($arr_v, $_POST['priv_roleid']);
  3.        $this->update_priv($arr_v, $_POST['priv_groupid'], 0);
  4.       }
复制代码

但是还有一个问题很多人没有注意,那就是这个方法就算解决了这个问题,可还是会出现新添加的子分类得不到权限

因为子分类在添加的时候上面的函数已经执行过了,应该在添加子分类的时候再次执行上面的方法,不过执行之后还是会有问题,如果你以前的子分类

设置过了不同于父栏目的个性权限,问题有回来了,你又错误的把权限重新设置了一次。

 

问题清楚了,那么如果只是解决新添加分类问题,可以把相关函数添加到

/**
     * 添加栏目
     */
    public function add() {}

这个函数中。

如果要解决子栏目设置不同权限问题就因该只复制父栏目的权限给新添加的函数。

posted @   fsl  阅读(1469)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示