您的位置:首页 > 运维架构

corethink功能模块探索开发(十四)后台编辑按钮

2016-04-08 21:09 429 查看
效果图:





1.添加下图55&58行代码



2.实现edit方法

位于Equip/Admin/DeviceRepaireAdmin.class.php中

public function edit($id){
if(IS_POST){
//用于保存编辑后的数据
$Equip_Repaire_object = D('equip_report');
$data = $Equip_Repaire_object->create();
if ($data) {
if ($Equip_Repaire_object->save($data)) {
$this->success('更新成功', U('index'));
} else {
$this->error('更新失败');
}
} else {
$this->error($Equip_Repaire_object->getError());
}
}else{

//用于填充并显示点击编辑按钮后生成的列表

$info = D('equip_report')->find($id);
// 使用FormBuilder快速建立表单页面。
$builder = new \Common\Builder\FormBuilder();
$builder->setMetaTitle('编辑导航') // 设置页面标题
->setPostUrl(U('edit')) // 设置表单提交地址
->addFormItem('id', 'hidden', 'ID', 'ID')
//设置文本类型的表单项目并用对应的数据库字段填充
->addFormItem('report_dormitory_num', 'text', '宿舍号', '报修的宿舍号')
->addFormItem('report_describe', 'text', '描述', '情况描述')
->addFormItem('report_ip', 'text', 'IP地址', '报修人的ip')
->addFormItem('report_tel', 'text', '手机号', '报修人的手机号')
->addFormItem('report_bzu_account', 'text', 'BZU账户')
//设置单选按钮、还可以参考实现select下拉选择框
->addFormItem('report_deal_or_not', 'radio', '处理状态', '用于显示的顺序',array('0' => '未处理', '1' => '已处理'))
->addFormItem('report_repaire_person', 'text', '处理人', '本次报修的处理人')
//--TODO-- 更改处理时间
//设置数据关联
->setFormData($info)
->display();
}
}这样就OK了。

贴出Equip/Admin/DeviceRepaireAdmin.class.php
<?php
/**
* Created by PhpStorm.
* User: pangPython
* Date: 16-3-24
* Time: 下午9:34
*/
namespace Equip\Admin;

use Admin\Controller\AdminController;
use Common\Util\Think\Page;

class DeviceRepireAdmin extends AdminController{
public function index(){
// 获取所有链接
$p = !empty($_GET["p"]) ? $_GET["p"] : 1;
$device_repire_object = D('equip_report');//实例化数据对象
$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('设备报修列表') // 设置页面标题

/*
* pangPython
* 2016-04-05
*
* */

//->addTopButton('self',$attr) // 添加自定义按钮

->addTopButton('delete',array('model' => 'equip_report')) // 添加删除按钮
->setSearch('请输入ID/链接标题', U('index'))
->addTableColumn('id', 'ID')
->addTableColumn('report_dormitory_num', '宿舍号')
->addTableColumn('report_describe', '描述')
->addTableColumn('report_ip', 'ip')
->addTableColumn('report_time', '报修时间', 'time')
->addTableColumn('report_tel', '手机号')
->addTableColumn('report_bzu_account', 'BZU账户', 'status')
->addTableColumn('report_deal_or_not', '处理否')
->addTableColumn('report_repaire_person', '处理人')
->addTableColumn('report_repaire_time', '处理时间','time')
->addTableColumn('right_button', '操作', 'btn')
->setTableDataList($data_list) // 数据列表
->setTableDataPage($page->show()) // 数据列表分页
->addRightButton('edit') // 添加编辑按钮
// ->addRightButton('forbid') // 添加禁用/启用按钮
// ->addRightButton('delete') // 添加删除按钮
->display();
}

public function edit($id){
if(IS_POST){
//用于保存编辑后的数据
$Equip_Repaire_object = D('equip_report');
$data = $Equip_Repaire_object->create();
if ($data) {
if ($Equip_Repaire_object->save($data)) {
$this->success('更新成功', U('index'));
} else {
$this->error('更新失败');
}
} else {
$this->error($Equip_Repaire_object->getError());
}
}else{

//用于填充并显示点击编辑按钮后生成的列表

$info = D('equip_report')->find($id);
// 使用FormBuilder快速建立表单页面。
$builder = new \Common\Builder\FormBuilder();
$builder->setMetaTitle('编辑导航') // 设置页面标题
->setPostUrl(U('edit')) // 设置表单提交地址
->addFormItem('id', 'hidden', 'ID', 'ID')
//设置文本类型的表单项目并用对应的数据库字段填充
->addFormItem('report_dormitory_num', 'text', '宿舍号', '报修的宿舍号')
->addFormItem('report_describe', 'text', '描述', '情况描述')
->addFormItem('report_ip', 'text', 'IP地址', '报修人的ip')
->addFormItem('report_tel', 'text', '手机号', '报修人的手机号')
->addFormItem('report_bzu_account', 'text', 'BZU账户')
//设置单选按钮、还可以参考实现select下拉选择框
->addFormItem('report_deal_or_not', 'radio', '处理状态', '用于显示的顺序',array('0' => '未处理', '1' => '已处理'))
->addFormItem('report_repaire_person', 'text', '处理人', '本次报修的处理人')
//--TODO-- 更改处理时间
//设置数据关联
->setFormData($info)
->display();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  corethink opencmf