效果图:

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();
}
}
}

  

corethink功能模块探索开发(十五)后台新增按钮的更多相关文章

  1. corethink功能模块探索开发(五)开启这个模块的配置

    上图: 主要就是两点. 1.在opencmf.php中填写好配置页面的按钮还是文本域 Equip/opencmf.php只需要注意主要的配置数组的内容 <?php // 模块信息配置 retur ...

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

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

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

    效果图: 1.添加下图55&58行代码 2.实现edit方法 位于Equip/Admin/DeviceRepaireAdmin.class.php中 public function edit( ...

  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. Ubuntu安装新版本nodejs的5种姿势

    引言: 写这篇文章之前,关于ubuntu14.04(Trusty)默认安装的NodeJS版本是0.10.25百思不解(什么鬼,哪一年的NodeJS) 写这篇文章之时,NodeJS的LTS版本号都已经1 ...

  2. oracle 存储过程中使用date 时、分、秒丢失

    今天有一开发兄弟找我.说出现一奇怪现象,在存储过程中赋date类型的值,时.分.秒都丢失了,以下来做个试验: SQL> drop table test purge; SQL> create ...

  3. 爬虫 (4)- Selenium与PhantomJS(chromedriver)与爬取案例

    Selenium文档 Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器 ...

  4. 在HTML5中如何提高网站前端性能

    1.    用web storage替换cookiesCookie最大的问题是每次都会跟在请求后面.在HTML5中,用sessionStorage和localStorage把用户数据直接在客户端,这样 ...

  5. 解决使用VS2013创建的MVC项目在VS2015中打开的各种问题

    其实很多问题一直都存在,但是因为其不影响编译结果和运行结果,所以我也就一直没理它.但是问题放在那一直存在,偶尔想起来还有某些问题没解决的时候心里总是感觉不得劲,所以今天就彻底的查查资料解决了. 问题一 ...

  6. 【vijos】1781 同余方程(拓展欧几里得)

    https://vijos.org/p/1781 学习了下拓欧.. 求exgcd时,因为 a*x1+b*y1=a*x2+b*y2=b*x2+(a-b*[a/b])*y2 然后移项得 a*x1+b*y1 ...

  7. 转载:resNet论文笔记

    <Deep Residual Learning for Image Recognition>是2016年 kaiming大神CVPR的最佳论文 原文:http://m.blog.csdn. ...

  8. Android 热修复 Tinker接入及源代码浅析

    本文已在我的公众号hongyangAndroid首发.转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/54882693本文出自张鸿 ...

  9. Domino Web中隐藏附件选择框

    只要在Web Form的最后加入以下代码,并选择Pass-Tru HTML,即可隐藏默认的附件选择框. <div id=attach Style="display:none" ...

  10. 定制iOS 7中的导航栏和状态栏

    本文转载至 http://www.cocoachina.com/industry/20131104/7287.html 跟大多数开发者一样,我也正忙于对程序进行升级以适配iOS 7.最新的iOS 7外 ...