ThinkSSL🔒 一键申购 5分钟快速签发 30天无理由退款 购买更放心 广告
### 批量设置数据列 ~~~ return TBuilder('table',$this)->addTopButton([ //添加顶部按钮 'type' => 'add', 'icon_class'=> 'fa fa-plus-circle', 'href' => url('add',['module'=>$module]), ]) ->addTopButton([ 'type' => 'custom', 'title' => '列表查看', 'icon_class'=> 'fa fa-list', 'href' => url('index',['module'=>$module]), ]) ->setColumns([ // 批量设置数据列 ['id', 'ID'], ['title.text', '名称'], //以普通文本编辑 ['pid', '上级菜单',['func'=>'get_parent_menu_name']], ['user_id', '用户',['table_field'=>'admin_member|username'] ], ['pro_cover_id', '封面', ['type'=>'img']], //显示图片(传入图片ID) ['group', '分组',], //['group_id.select', '分组',['data'=>M('Group')->select(),'data_field'=>'id|title']], ['url', 'URL',['type'=>'url', 'url'=>'menu/index', 'p'=>'id.pid']], ['icon_class', 'ICON',], ['sort', '排序',], ['description.textarea', '描述',], //以多行文本编辑 ['status.select', '状态',['func'=>'c_name','config_name'=>'status'] ], ['is_dev', '仅开发者模式显示', ['func'=>'yes_no']], ['hide', '隐藏', ['func'=>'yes_no']], ['edit.edit_data|id+title,del', '操作', ['type'=>'btn']] ]) // 添加相关操作按钮 ->addListButton([ 'type' => 'edit', 'icon_class'=> 'fa fa-pencil', ]) ->addListButton([ 'title' => '别表查看', 'href_base' => 'menu/index', 'href_param'=> 'pid.id', 'icon_class'=> 'fa fa-list', ]) ->fetch(); ~~~ ### setColumns参数为多维数组 > * 批量设置数据列 * @param array $columns * [[field,name,config]] * 参数1 字段信息 * field展示类型,如果可以直接编辑则以.号分割,其后加入编辑类型 * 参数2 字段名称 * 参数3 展示配置 * type 展示类型 * field // field . xedit type * url * btn // type . url | 参数 * * //type为field,对显示内容进行二次处理的函数 * func 对字段处理的函数名称,参数为当前值 * func_param 当存在对字段处理的函数时,此值为为该函数的第二个参数 * * config_name 配置参数名。当func为c_name时且func_param未传值,此值可替代func_param。 * 当type为field且可编辑时,此为编辑选择数据源。 * * //附加数据select2 * data 下拉的数据 * data_field 使用的字段,使用 | 分割值与显示用字段,'id|name' * * table_field 获取指定表的指定字段的值,使用 | 分割表与表字段(影响速度,不建议使用) * * icon_prefix_class_field 前置图标字段名称 * icon_prefix_class 前置图标class值 * * //type为btn有效 * btn_config 按钮相关配置 * * //type为url有效 * url 展示类型为url时,当type为url时生效 * url_param 展示类型为url时参数配置,当type为url时生效 * * //样式相关 * 'style' => '', * * // 字段前后附加内容 * 'prepend_content' => '', // 向前追加 * 'append_content' => '', // 向后追加 * 'bottom_html' => '', // 换行追加 当type为btn时,参数1(字段信息)为按钮配置信息,多个按钮以英文逗号分割,格式为 > ‘预定义按钮类型.URL别名|数据参数1+数据参数2,预定义按钮类型’ ### 一、换行内容设置 ~~~ ['title', '试卷',[ 'bottom_html'=>'作答时间{{$expected_duration}}分钟,卷面总分{{$project_total_score}}分,题目{{$topic_num}}道' ]], ~~~ ![](https://box.kancloud.cn/ac28aea305160fde93fa025bd5db6a99_1485x128.png) ### 二、可选项/键值数组关联 #### ① 读取配置 ~~~ //状态 (config.php中配置项) 'status' => [ '1' => '启用', '0' => '禁用', ], ~~~ ~~~ ->setColumns([ ['status.select', '状态',['func'=>'c_name','config_name'=>'status'] ], ]) ~~~ #### ② 键值数组 ~~~ $organization_ids_name = [ 10001=>'组织A', 10002=>'组织B', ]; ~~~ ~~~ ->setColumns([ ['organization_id', '所属组织',['listdata'=>$organization_ids_name]], ]) ~~~ #### ③ 多维数组