zdcms后台权限控制开发

zdcms后台权限控制开发说明

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

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

如果后台设计到权限问题菜单,需要将控制器的方法名(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}


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

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

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

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

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

zdcms后台权限开发

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;
   }

}




评论