fastadmin根据角色组设置权限

本文介绍了如何在FastAdmin中为角色组添加审核和批量审核权限。首先,通过修改`build_toolbar`方法添加所需按钮,并在JS配置文件`require-table.js`中扩展公共方法。接着,绑定事件并确保权限判断正确。最后,添加相应的规则到权限管理,以使不同角色用户能看到对应按钮。单个操作权限的配置也进行了说明。
摘要由CSDN通过智能技术生成

之前使用fastadmin,自定义角色组,发现编辑/删除/修改等等权限可以直接权限管理中选择,然后用不同的角色登陆,会显示对应的权限按钮。此时有一个新的需求就是增加审核和批量审核,并且也增加对应的权限。


添加按钮

先不写功能,在对应的位置上加上审核按钮。在顶头位置的批量审核需要得到的样式如下:

clipboard.png

原先的创建按钮方法为:

{:build_toolbar('refresh,edit,checkall')}

有时候不使用buid_toolbar来创建按钮,而是直接使用的

 <a href="javascript:;" class="btn btn-danger btn-del btn-disabled disabled {:$auth->check('course/clabelong/del')?'':'hide'}"

title="{:__('Delete')}" >
{:__('Delete')}

这种方式来创建按钮,这样虽然很直观,但是实际上使用却很不方便,因为这里对于权限的判定可能是有问题的。期待的结果是直接使用build_toolbar方法,设置checkall为批量审核,check为审核方法,对于各个权限组可以直接调用。
修改build_toolbar方法到如下结果:

function build_toolbar($btns = NULL, $attr = [])
    {
        $auth = \app\admin\library\Auth::instance();
        $controller = str_replace('.', '/', strtolower(think\Request::instance()->controller()));
        $btns = $btns ? $btns : ['refresh', 'add', 'edit', 'del', 'import','checkall'];
        $btns = is_array($btns) ? $btns : explode(',', $btns);
        $index = array_search('delete', $btns);
        if ($index !== FALSE) {
            $btns[$index] = 'del';
        }
        $btnAttr = [
            'refresh' => ['javascript:;', 'btn btn-primary btn-refresh', 'fa fa-refresh', '', __('Refresh')],
            'checkall'=> ['javascript:;', 'btn btn-success btn-checkall btn-disabled disabled', 'fa fa-flag-checkered', ' 批量审核', 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值