FastAdmin后台的列表,在操作批量更新时(包括Switch切换),可能会出现"你没有权限访问"的错误提示,这种情况下一般是使用非最高权限管理员操作时发生的。
首先在菜单规则
中排查一下是否授权了该管理员所在的角色组该菜单的批量更新
权限,如果有,那就可能是所要更新的字段的问题了。
因为FastAdmin的批量更新的字段默认只有status
,如果要操作其它字段,就要把它添加进去。
方法有二:
- 修改
application/common/controller/Backend.php
,修改如下行
protected $multiFields = 'status';
把要操作的字段添加进去,示例如下
protected $multiFields = 'status, status2';
- 修改具体的后台控制器,如
application/admin/controller/MyList.php
,在protected $model = null;
下面添加一行
protected $multiFields = 'status, status2';
可以根据自己的情况去做修改,如果大部分表中都存在这个字体,那添加到基类中比较方便,否则还是修改后台的控制器吧。