ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## 列表Builder构建器 ### 说明 列表构建器整合Bootstrap-table实现快速构建一个列表页面 ### 用法 例: ``` // 获取所有用户 $condition =[ 'status'=> ['egt', '0'], // 禁用和正常状态 ]; /** *$condition查询条件支持闭包查询 */ list($data_list,$total) = model('common/User') ->search('username|nickname')//搜索 ->getListByPage($condition,true,'create_time desc',12); $reset_password = [ 'icon'=> 'fa fa-recycle', 'title'=>'重置原始密码', 'class'=>'btn btn-default ajax-table-btn confirm btn-sm', 'confirm-info'=>'该操作会重置用户密码为123456,请谨慎操作', 'href'=>url('resetPassword') ]; return builder('List') ->setMetaTitle('用户管理') // 设置页面标题 ->addTopButton('addnew') // 添加新增按钮 ->addTopButton('delete') // 添加删除按钮 ->addTopButton('self',$reset_password) // 添加重置按钮 ->setSearch('custom','请输入关键字')//自定义搜索框 ->keyListItem('uid', 'UID') ->keyListItem('avatar', '头像', 'avatar') ->keyListItem('nickname', '昵称') ->keyListItem('username', '用户名') ->keyListItem('email', '邮箱') ->keyListItem('mobile', '手机号') ->keyListItem('reg_time', '注册时间') ->keyListItem('allow_admin', '允许进入后台','status') ->keyListItem('status', '状态', 'array',[0=>'禁用',1=>'正常',2=>'待验证']) ->keyListItem('right_button', '操作', 'btn') ->setListPrimaryKey('uid')//设置主键uid(默认id) ->setExtraHtml($extra_html)//自定义html ->setListData($data_list) // 数据列表 ->setListPage($total,12) // 数据列表分页 ->addRightButton('edit') //添加编辑按钮 ->addRightButton('delete') // 添加编辑按钮 ->fetch(); ``` ### 效果图 ![](https://box.kancloud.cn/cc4d68d4fb84720c057333dac4772228_1306x692.jpg) ### 讲解: 从上面的代码示例中体现构建器List的使用要点: 1.模型的数据查询,包含返回数据总量。 ~~~ list($data_list,$total) = model('common/User')->search('username|nickname')->getListByPage($map,true,'create_time desc',12); ~~~ 2.自定义头部操作按钮。 ~~~ $reset_password = [ 'icon'=> 'fa fa-recycle', 'title'=>'重置原始密码', 'class'=>'btn btn-default ajax-table-btn confirm btn-sm', 'confirm-info'=>'该操作会重置用户密码为123456,请谨慎操作', 'href'=>url('resetPassword') ]; ->addTopButton('self',$reset_password) // 添加重置按钮 ~~~ 3.添加列表项 ~~~ ->keyListItem('username', '用户名') ~~~ 4.设置列表主键,批量操作会用到 ~~~ ->setListPrimaryKey('uid') //设置主键uid(默认id) ~~~ 5.列表数据赋值 ~~~ ->setListData($data_list) // 数据列表 ~~~ 6.设置列表分页。 ~~~ ->setListPage($total,12) // 数据列表分页 ~~~ >[info] 注意:分页方法的第二个参数是设置每页的数据行数,要和数据查询的设置相同 7.添加列项按钮 ~~~ ->addRightButton('edit') ~~~