方法一、后台标准化菜单权限划分

控制器菜单链接必须出现在后台菜单中。

如果后台设计到权限问题菜单,需要将控制器的方法名(fucntion 方法名())进行规范化命名

public function xxx_index() {
    // 使用权限的控制器方法命名 后缀_index
}
public function xxx_add() {
    // 添加权限的控制器方法命名 后缀_add
}
public function xxx_edit() {
    // 修改权限的控制器方法命名 后缀_edit
}
public function xxx_del() {
    // 删除权限的控制器方法命名 后缀_del
}
public function xxx_show() {
    // 查看权限的控制器方法命名 后缀_show
}

以上的“xxx_”可以省略不写!


后台模板判断某控制器是否具有操作权限:

{if $ci->_is_admin_auth('del')}
当前控制器运行del操作
{/if}


方法二、后台其他控制器的权限划分

如果控制器没有出现在后台菜单中,属于其他自定义控制器的权限。

1、比如此链接的权限控制

admin.php?s=demo&c=aaa&m=upload

如果这个链接不出现在后台菜单中的话,那么就只能在程序里面做权限判断了

QQ截图20210628111910

2、在插件modles目录创建Auth.php模型文件

例如插件目录是Demo,dayrui/App/Demo/Models/Auth.php

<?php namespace Phpcmf\Model\插件目录;

// 权限验证
class Auth extends \Phpcmf\Model
{
    // 权限自定义判断
    public function is_auth($c, $m) {
        // $c 表示插件控制器名称,$m表示插件控制器方法
        
        /// 比如 aaa.php控制器的upload方法有权限的写法是
        if ($c == 'aaa' && $m == 'upload') {
            return 1;
        }
    
        // 这里的程序体,有权限返回1,没权限返回0
        return 0;
    }

}



文档最后更新时间:2023-08-01 08:18:47
我来修改此文档(1) 不会操作怎么办?