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

1. 一键 curd 以及配置菜单

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

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

 

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

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

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

1
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 新增按钮

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

  

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

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

  

6.4 增加点击事件

1
2
3
4
5
6
7
8
9
'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 的三目运算符。

1
2
3
// 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 @   心无引擎,眼无流派  阅读(494)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示
哥伦布
15:09发布
哥伦布
15:09发布
8°
西风
4级
空气质量
相对湿度
56%
今天
0°/13°
周一
4°/16°
周二
多云
7°/18°