效果图:

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功能模块探索开发(十四)后台编辑按钮的更多相关文章

  1. corethink功能模块探索开发(四)让这个模块跑起来

    让这个模块跑起来,太费劲了,多半原因是自己太粗心,opencmf.php中“uid”写成了“pid”,de了好几天的bug也没有搞出来,又加上最近发生了些事(brokenhearted)... 上报错 ...

  2. corethink功能模块探索开发(十六)后台搜索功能

    效果图: 代码很简单,就是添加搜索框,搜索字段,在初始化页面查询的时候添加查询条件. 1.添加搜索框 添加到删除按钮后边. ->setSearch('请输入设备名称/MAC/宿舍号', U('i ...

  3. corethink功能模块探索开发(十五)后台新增按钮

    效果图: 1.首先添加数据列表上的新增按钮,让按钮显示出来 ->addTopButton('addnew') 2.让这个按钮行动起来,实现add方法 public function add(){ ...

  4. corethink功能模块探索开发(十八)前台页面插入jit前端数据可视化库

    效果图: 1.静态文件放入View目录中 在View目录下新建Public目录,在Public目录下新建js.css目录. 把jit的资源放入对应目录中 2.在html中引入jit Applicati ...

  5. corethink功能模块探索开发(一)根据已有模块推测目录结构

    corethink是opencmf的一个开源版本,如果自己要进行二次开发,开发模块等,需要在官方开一个中级会员(50大洋吧),官网的一个“一键生成demo”就能给你最基础的目录结构,从而可以在此基础上 ...

  6. corethink功能模块探索开发(三)让这个模块可见

    感觉corethink把thinkphp的思想复用到淋漓尽致. 1.把opencmf.php文件配置好了后台该模块的菜单就能在安装后自动读取(分析好父子关系,否则页面死循环,apache资源占用率10 ...

  7. corethink功能模块探索开发(二)让这个模块可安装

    要想让这个模块可安装,只需要在opcmf.php文件中写一些配置数据就行 随便写点 Equip/opencmf.php <?php // 模块信息配置 return array( // 模块信息 ...

  8. corethink功能模块探索开发(十七)opencmf.php 配置文件

    图样: opencmf.php存在于每个模块的根目录,是模块配置文件. 能进行持久化配置参数保存,一开始我以为是写文件或者做缓存,后来在数据库中发现admin_module表,存储了每个模块的配置参数 ...

  9. corethink功能模块探索开发(六)让这个模块在前台显示

    效果图:(注意右上角) 实现模块的前台显示只需要在模块目录中的Controller目录建立IndexController.class.php,实现index方法.继承HomeController.就能 ...

随机推荐

  1. Using Fast Weights to Attend to the Recent Past

    Ba, Jimmy, et al. "Using Fast Weights to Attend to the Recent Past." Advances In Neural In ...

  2. 在java语言中int 和 Integer 有什么区别

    在java语言中int 和 Integer 有什么区别 解答:int是基本数据类型,Integer是int的包装类,属于引用类型

  3. 小白用advanced installer建安装包

    写这篇文章的目的是由于肯定有人跟我一样非常小白,对安装包的构建又好奇.而我自己呢也要mark一下下,so--- 一.VS安装项目 首先关于安装包的构建,实用VS自带建安装项目的方式.网上有个中文工具叫 ...

  4. IdentityServer4环境部署失败分析贴(一)

    前言: 在部署Idv4站点和其客户端在外网时,发现了许多问题,折腾了许久,翻看了许多代码,写个MD记录一下. 1.受保护站点提示错误: Unable to obtain configuration f ...

  5. MAC Ruby版本需要升级至2.2.2以上

    第一例: 默认情况下,Mac OS X 系统已经安装好 Ruby(最新的 Mavericks 随机的 Ruby 版本为 2.0.0p247),安装在 /System/Library/Framework ...

  6. Codeforces 193A. Cutting Figure

    看起来非常神,但仅仅有三种情况 -1 , 1 ,2..... A. Cutting Figure time limit per test 2 seconds memory limit per test ...

  7. jQuery左右选择框

    <!DOCTYPE html> <html> <head> <title>左右选择框</title> <style type=&quo ...

  8. poj 3653(最短路)

    题目链接:http://poj.org/problem?id=3653 思路:题目意思很简单,就是二维平面上的图,要求起点到终点的最短路.建图略坑,需要坐标映射,化二维为一维.然后就是Dijkstra ...

  9. oralce 术语

    §2.1 术语 l 数据库块(BLOCK) ORACLE 数据库中的最小存储和处理单位,包含块本身的头信息数据或PL/SQL代码. ORACLE 块的大小是可以在安装时选择“自定义安装”来指定,也可以 ...

  10. Oracle起步---创建临时表空间/表空间/创建用户/授权

    1. 安装: 百度一下你就知道 2. sqlplus登录/sqlplus命令登录 在安装Oracle时,你需要记住设置的“全局数据库名”(默认为orcl) 和 口令,在以两种方式登录时: 用户名: s ...