现在有个需求,需要用fastadmin来完成一个操作:

  1. 超级管理员通过导入一个excel表,批量生成若干个管理员。
  2. 对这些管理员进行批量操作,例如同时纳入教师组(二级管理员)

为了完成这个需求,我要做两个操作:
1、使用fastadmin自带的导入功能,进行管理员信息的统一上传。
2、添加自定义的批量操作按钮,完成向管理员组表里添加数据的功能。

接下来是第一步(导入Excel表生成数据)

  1. 首先在管理员的index.html中添加该代码
{:build_toolbar('refresh,add,delete,import')}
  1. 在管理员的admin.js添加如下代码
import_url: 'auth/admin/import',
  1. 在管理员的Admin.php文件添加如下代码:
public function import(){return parent::import();
}
  1. 导入按钮就会显示在管理员页面上了
  2. 导入数据格式可以按照下面的来

请注意,表格的第一行是数据库中字段的备注名,想添加哪一行就去数据库看备注是什么,然后写到表格里就可以了。
密码: c13f62012fd6a8fdf06b3452a94430e5
密码盐: rpR6Bv
这样设置密码默认为 123456

然后是第二步(添加自定义批量操作按钮)

  1. 首先我们要做的操作是给这些管理员批量设置管理组级别,因此,我们去看一下fastadmin是如何设置级别的。重点代码在这里:

uid是管理员的id,group_id是管理组的id

  1. 所以我们要做的就是获取到所有选中的管理员的id,并调用模板来存入数据
  2. 添加批量操作按钮,在管理员的index.html中
<a href="javascript:;" class="btn btn-primary btn-changeteacher btn-disabled disabled" title="{:__('批量设置为教师')}" ><i class="fa fa-suitcase"></i> {:__('批量设置为教师')}</a>
  1. 在管理员的admin.js中添加如下代码:
         /* 获取选中的id */function getIdSelections() {return $.map($("#table").bootstrapTable('getSelections'), function(row) {return row.id});}// 批量设置权限// 注意这里的元素你需要根据自己给<a>标签取的类名来获取,我的是btn-changeteacher,你可以在上一步看到。$(".btn-changeteacher").on('click',function(){var ids =table.bootstrapTable('getSelections');console.log(ids);var checkids = [];checkids = getIdSelections();console.log(checkids);Fast.api.ajax({type: 'POST',url:'auth/admin/changeteacher?ids='+checkids}, function (data, ret) {console.log(data);location.reload();}, function (data, ret) {console.log(data);location.reload();});      })
  1. 在管理员的控制器 Admin.php中添加如下代码:
 /*** 批量设置为教师组*/public function changeteacher() {$lists=$this->request->param('ids');$ids = explode ( ',',$lists);//转数组$dataset = [];for ($i = 0; $i < count($ids); $i++){$dataset[] = ['uid' => $ids[$i], 'group_id' => 2];}try{model('AuthGroupAccess')->saveAll($dataset);Db::commit();$this->success(null, null, array("result" => "success"));} catch (\Exception $e) {Db::rollback();$this->error($e->getMessage());}}
  1. 所有功能完成,测试前请先清理一下缓存。

【fastadmin】如何自定义批量操作按钮以及导入excel表格添加多个管理员相关推荐

  1. java操作mysql导表_Java实现批量导入excel表格数据到数据库中的方法

    本文实例讲述了Java实现批量导入excel表格数据到数据库中的方法.分享给大家供大家参考,具体如下: 1.创建导入抽象类 package com.gcloud.common.excel; impor ...

  2. 批量将文件名导入excel,步骤教程

    如何批量将文件名导入excel?面对这类问题的时候一般都是文件数量较多的情况下,文件数量较多的话,如果一个一个的将文件名复制粘贴到excel表格就需要很多的时候,这时候就需要批量将文件名导入到exce ...

  3. java 导入excel表格(批量导入),下载excel模板,导出表格

    1.导入excel表格(批量导入) 如图,给id=83和id=84的老师导入工作时间. 导入的excel模板如下 注意导入excel表格时关于日期时间类的的数据要设置对应的格式. 后台接口 /*** ...

  4. php导入excel表格数据,php页面导入excel表格数据-php导入excel 怎么获取excel表格数据...

    PHP如何导出当前页面中的表格至Excel 常用的用PHP读取EXCEL的方法有以下三种,各自有各自的优缺点.个人推荐用第三种方法,因为它可以跨平台使用. 1. 以.csv格式读取 将.xls转换成. ...

  5. 如何在ex表格导入php_怎么使用php把表格中的数据导入到excel中,php如何快速导入excel表格数据...

    php怎么导入大量数据的excel php导出数据的Excel: PHP从数据库分多次读取100万行记录,和分将100万入文本文件都没问题 Excel可以支100万行记录,Excel 2003最大支持 ...

  6. 批量提取文件名到excel,批量提取文件名到excel表格

    如何批量提取文件名到excel表格?工作中我们经常需要将一些文件的名称提取到excel表格里面,一般我们采用两种提取方法:文件数量不多的时候(比如几十个),只需要一个一个复制然后粘贴到excel文件表 ...

  7. matlab绘图 excel,『在matlab上如何导入excel表格然后画图』excle表格如何使用绘图笔...

    excel怎样在绘制图形中加入文字 1.在excel表制图形中加入文以添加文字,首先绘制图形,图形绘制好图形,并选择"编辑文字",输入文字即可. 1.1插入图形, 1.2,选择所需 ...

  8. php excel导入数据库显示乱码,php修改excel表格数据库数据格式-使用phpexcel导入excel表格数据到MYSQL,乱码怎么解决...

    PHP 用PHPExcel往数据库导入大量数据 估计0是null,所以不显示了,可以换个思路,让他显示为字符串 $number = 0; echo ''.$number 原生PHP代码实现excel导 ...

  9. Navicat怎样导入Excel表格和txt文本的数据

    Navicat怎样导入Excel表格数据 1. 准备excel数据表,第一行是字段名,第二到五行是数据 (1.当需要存储的字段为null时,对应的单元格不写  2.注意数据是在哪个工作表中,例如:下面 ...

最新文章

  1. ES6新特性:Javascript中的Reflect对象
  2. 如何使方法行数达到最优、常量与变量如何优雅的定义?
  3. sql2008 获取表结构说明
  4. Python笔记-获取拉钩网南京关于python岗位数据
  5. 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...
  6. jquery生成一个li_如何使用jQuery从字符串数组生成UL Li列表?
  7. [图示]抢逼围:项目开发3字经
  8. jquery实现上拉加载更多
  9. PHP漏洞全解—————9、文件上传漏洞
  10. 【Access2007】将Excel表导入至Access2007的当中一张已存在的表之中
  11. 子网掩码和IP地址计算网络地址和广播地址的换算
  12. 百度地图API仿链家地图找房 聚合开发 js实现
  13. Super-Resolution Mapping of Impervious Surfaces from Remotely Sensed Imagery with Points-of-Interest
  14. 深度学习的下一个十年,延展基础科学研究变革的「角力场」
  15. 读书笔记:读《知道做到》学“知行合一”
  16. 解析grant connect, resource to user语句
  17. 离散数学数理逻辑部分【2】
  18. red hat linux忘记root密码,Red Hat Linux忘记root密码的解决办法
  19. 【科技与狠货】云盘变硬盘
  20. 在matlab中chrom,一段matlab程序,其中chrom(i,j)=p(chrom(i,j),j)是什么意思

热门文章

  1. oracle 一个实例创建多个数据库_创建多个Oracle数据库及相应的实例
  2. 10 个 Java 安全最佳实践
  3. filter()与some()的区别
  4. 时间戳服务器作用,叶胜超:一分钟搞懂时间戳和时间戳服务器(21)
  5. git撤销单个文件的修改_git 撤销修改以及删除文件
  6. 治Android各种疑难杂症
  7. Html特殊标记符号
  8. 用VAR模型分析该期货波动的影响因素
  9. php flash 在线录音,jRecorder-master
  10. centos7双机搭建_centos7 DHCP搭建双机热备 集群