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();
}
}
}
corethink功能模块探索开发(十五)后台新增按钮的更多相关文章
- corethink功能模块探索开发(五)开启这个模块的配置
上图: 主要就是两点. 1.在opencmf.php中填写好配置页面的按钮还是文本域 Equip/opencmf.php只需要注意主要的配置数组的内容 <?php // 模块信息配置 retur ...
- corethink功能模块探索开发(十六)后台搜索功能
效果图: 代码很简单,就是添加搜索框,搜索字段,在初始化页面查询的时候添加查询条件. 1.添加搜索框 添加到删除按钮后边. ->setSearch('请输入设备名称/MAC/宿舍号', U('i ...
- corethink功能模块探索开发(十四)后台编辑按钮
效果图: 1.添加下图55&58行代码 2.实现edit方法 位于Equip/Admin/DeviceRepaireAdmin.class.php中 public function edit( ...
- corethink功能模块探索开发(十八)前台页面插入jit前端数据可视化库
效果图: 1.静态文件放入View目录中 在View目录下新建Public目录,在Public目录下新建js.css目录. 把jit的资源放入对应目录中 2.在html中引入jit Applicati ...
- corethink功能模块探索开发(一)根据已有模块推测目录结构
corethink是opencmf的一个开源版本,如果自己要进行二次开发,开发模块等,需要在官方开一个中级会员(50大洋吧),官网的一个“一键生成demo”就能给你最基础的目录结构,从而可以在此基础上 ...
- corethink功能模块探索开发(三)让这个模块可见
感觉corethink把thinkphp的思想复用到淋漓尽致. 1.把opencmf.php文件配置好了后台该模块的菜单就能在安装后自动读取(分析好父子关系,否则页面死循环,apache资源占用率10 ...
- corethink功能模块探索开发(二)让这个模块可安装
要想让这个模块可安装,只需要在opcmf.php文件中写一些配置数据就行 随便写点 Equip/opencmf.php <?php // 模块信息配置 return array( // 模块信息 ...
- corethink功能模块探索开发(十七)opencmf.php 配置文件
图样: opencmf.php存在于每个模块的根目录,是模块配置文件. 能进行持久化配置参数保存,一开始我以为是写文件或者做缓存,后来在数据库中发现admin_module表,存储了每个模块的配置参数 ...
- corethink功能模块探索开发(六)让这个模块在前台显示
效果图:(注意右上角) 实现模块的前台显示只需要在模块目录中的Controller目录建立IndexController.class.php,实现index方法.继承HomeController.就能 ...
随机推荐
- hadoop节点挂死的一次分析报表。
hadoop的一个节点unused了.然后重启启动hadoop的服务,仍有有一个hadoop的节点起不来.多次重启hadoop和杀进程之后,发现hadoop的master和slave节点上的状态在切换 ...
- 2017"百度之星"程序设计大赛 - 初赛(B) 度度熊的交易计划 最小费用最大流求最大费用
/** 题目:度度熊的交易计划 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6118 题意:度度熊参与了喵哈哈村的商业大会,但是这次商业大会遇到了一个难题 ...
- hdu6060 RXD and dividing 贪心
/** 题目:hdu6060 RXD and dividing 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6060 题意:贪心 给定一颗树,n个节点,编 ...
- k8s入门
一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机:万级容器:相如无亿,K8s有亿 ...
- C++ 抽象类一(多继承与赋值兼容性原则)
//多继承与赋值兼容性原则 #include<iostream> using namespace std; class Point{ public: Point(){ a = ; b = ...
- Switch选择语句能否作用在String【字符串】上,也就是能否这么写:Switch(一个字符串变量)?
Switch选择语句能否作用在String[字符串]上,也就是能否这么写:Switch(一个字符串变量)? 解答:不可以,只能处理int,byte,short,char,(其实是只能处理int,其它三 ...
- canvas图片base64编码后,ajax提交到后台
如题,直接上JS var imgData = canvas.toDataURL("image/png"); var data = imgData.substr(22); $.pos ...
- Grodno 2015 (Urozero May 2015 Day 5) D Triangles
给出$P(<=10^9)$, 求有多少个有序三元组$(a, b, c),\ gcd(a, b, c) = 1,\ a + b + c <= P$且以它们构成的三角形中存在某个角是另外一个角 ...
- uva414 - Machined Surfaces
uva414 - Machined Surfaces /* 水题,值得一提的是,getline使用时注意不能让它多吃回车键,处理方法可以用getchar. */ #include <iostre ...
- VS2008让Release配置也能调试起来~
1.切换当前配置为Release-Win32 2.工程属性->C/C++->General->Debug Information Format 3.工程属性->C/C++-&g ...