fastadmin 数据记录行上添加操作按钮并设置权限

1. 一键 curd 以及配置菜单

编写控制器方法 - 业务逻辑

再次一键生成菜单 - 生成刚刚写审核通过方法的控制器。

 

2. 自定义控制器中方法。

3. 查看角色组的权限,并授予该角色权限。

4. 前端修改 index 页面,因为需要权限所以需要加上一句话

data-operate-log="{:$auth->check('pz/ypdjpz/log')}"

 

5. 修改对应页面的 js。路径为:public/assets/js/backend/

6. 修改公共 js。路径为:public/assets/js/require-table.js

6.1 新增 url

6.2 新增按钮

log: {
    name: 'log',
    icon: 'fa fa-trash',
    title: __('历史记录'),
    extend: 'data-toggle="tooltip"',
    classname: 'btn btn-xs btn-primary btn-log'
}

  

6.3 将按钮加入到数据中,在 formatter 的 operate 里

if (options.extend.log_url !== '' && names.indexOf('log') === -1) {
    buttons.push(Table.button.log);
}

  

6.4 增加点击事件

'click .btn-log': function (e, value, row, index) {
    e.stopPropagation();
    e.preventDefault();
    var that = this;
    var table = $(this).closest('table');
    var options = table.bootstrapTable('getOptions');
    var ids = row[options.pk];
    Table.api.multi("log", ids, table, that);
},

 

6.5 修改 multi 代码,修改 url 的三目运算符。

// var url = typeof data.url !== "undefined" ? data.url : (action == "del" ? options.extend.del_url : options.extend.multi_url);

var url = typeof data.url !== "undefined" ? data.url : (action == "del" ? options.extend.del_url :(action == "log" ? options.extend.log_url:options.extend.multi_url));

7. 配置按钮时的图标地址

 

posted @ 2024-11-13 17:26  心无引擎,眼无流派  阅读(134)  评论(0编辑  收藏  举报