corethink功能模块探索开发(十五)后台新增按钮
效果图:
1.首先添加数据列表上的新增按钮,让按钮显示出来
->addTopButton('addnew')
2.让这个按钮行动起来,实现add方法
public function add(){ if(IS_POST){ $ap_object = D('equip_ap'); $data = $ap_object->create(); if($data){ $id = $ap_object->add($data); if ($id) { $this->success('新增成功', U('index')); } else { $this->error('新增失败'); } }else{ $this->error($ap_object->getError()); } }else{ // 使用FormBuilder快速建立表单页面。 $builder = new \Common\Builder\FormBuilder(); $builder->setMetaTitle('新增AP') // 设置页面标题 ->setPostUrl(U('add')) // 设置表单提交地址 ->addFormItem('ap_name', 'text', 'AP名称') ->addFormItem('ap_mac', 'text', 'mac', 'AP mac地址') ->addFormItem('dormitory_num', 'text', '宿舍号', 'AP对应的宿舍号') ->addFormItem('status', 'radio', '状态', 'AP状态',array('0'=>'在线','1'=>'离线')) ->display(); } }
现在是只能添加,不能在显示列表显示出来
3.把显示列表与数据库关联起来
index方法中添加
// 获取所有链接 $p = !empty($_GET["p"]) ? $_GET["p"] : 1; $device_repire_object = D('equip_ap');//实例化数据对象 $data_list = $device_repire_object ->page($p, C('ADMIN_PAGE_ROWS')) ->select();//分页查询数据列表 $page = new Page( $device_repire_object->count(), C('ADMIN_PAGE_ROWS') ); // 转换成树状列表 $tree = new \Common\Util\Tree(); $data_list = $tree->toFormatTree($data_list);
从builder中添加
->setTableDataList($data_list) // 数据列表 ->setTableDataPage($page->show()) // 数据列表分页
这样就OK了
:) thinkphp的官方表情
Application/Equip/Admin/ApAdmin.class.php
<?php /** * Created by PhpStorm. * User: pangPython * Date: 16-3-30 * Time: 下午10:22 */ namespace Equip\Admin; use Admin\Controller\AdminController; use Common\Util\Think\Page; class ApAdmin extends AdminController{ public function index(){ // 获取所有链接 $p = !empty($_GET["p"]) ? $_GET["p"] : 1; $device_repire_object = D('equip_ap');//实例化数据对象 $data_list = $device_repire_object ->page($p, C('ADMIN_PAGE_ROWS')) ->select();//分页查询数据列表 $page = new Page( $device_repire_object->count(), C('ADMIN_PAGE_ROWS') ); // 转换成树状列表 $tree = new \Common\Util\Tree(); $data_list = $tree->toFormatTree($data_list); //使用Builder快速建立列表页面 $builder = new \Common\Builder\ListBuilder(); $builder->setMetaTitle('无线AP') //设置页面标题 ->addTopButton('addnew') ->addTableColumn('id', 'ID') ->addTableColumn('ap_name', '设备名称') ->addTableColumn('ap_mac', 'MAC') ->addTableColumn('dormitory_num','宿舍号') ->addTableColumn('status', '状态', 'status') ->addTableColumn('right_button', '操作', 'btn') ->setTableDataList($data_list) // 数据列表 ->setTableDataPage($page->show()) // 数据列表分页 ->display(); } public function add(){ if(IS_POST){ $ap_object = D('equip_ap'); $data = $ap_object->create(); if($data){ $id = $ap_object->add($data); if ($id) { $this->success('新增成功', U('index')); } else { $this->error('新增失败'); } }else{ $this->error($ap_object->getError()); } }else{ // 使用FormBuilder快速建立表单页面。 $builder = new \Common\Builder\FormBuilder(); $builder->setMetaTitle('新增AP') // 设置页面标题 ->setPostUrl(U('add')) // 设置表单提交地址 ->addFormItem('ap_name', 'text', 'AP名称') ->addFormItem('ap_mac', 'text', 'mac', 'AP mac地址') ->addFormItem('dormitory_num', 'text', '宿舍号', 'AP对应的宿舍号') ->addFormItem('status', 'radio', '状态', 'AP状态',array('0'=>'在线','1'=>'离线')) ->display(); } } }