yii项目开发项目常用技巧和方法汇总
1.使用CActiveForm类组件如何输出不带html属性的结果
eg:<?php echo $form->textField($model,'email',array('size'=>30,'maxlength'=>40)); ?>是一个返回带表单的属性的结果
aq:如何返回字段本身?
eg:<?php echo CHtml::value($model,'username'); ?> 2.使用CGridView常用技巧 a.改变分页位置 'template'=>"{items}\n{pager}\n{summary}",
b.改变列表表格 默认样式 itemsCssClass'=>'width_100',
c.添加批量删除 功能
array(
'class'=>'CCheckBoxColumn',
'header'=>'全选',
'selectableRows'=>'2',
'checked'=>'false',
'checkBoxHtmlOptions'=>array('name'=>'selectdel[]'), //checkBoxHtmlOptions是数组类型
'headerHtmlOptions'=>array('width'=>'50px','value'=>'','checked'=>false),//在这里,我使用默认的。
//'footer' => '<button type="button" style="width:76px">批量删除</button>',
//'visible'=>false,
'footer'=>CHtml::button('批量删除',array('onclick'=>'GetCheckbox()','multi_del_url'=>CHtml::normalizeUrl(array('/post/delall/')),'id'=>'mdu','class'=>'button')), ),
d.定义操作栏名称 'header'=>'管理操作',
代码
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'admin-grid',
'dataProvider'=>$model->search(),
'template'=>"{items}\n{pager}\n{summary}",
//'filter'=>$model,
'itemsCssClass'=>'width_100',
'columns'=>array(
/* array(
'class'=>'CCheckBoxColumn',
'header'=>'全选',
'selectableRows'=>'2',
'checked'=>'false',
'checkBoxHtmlOptions'=>array('name'=>'selectdel[]'), //checkBoxHtmlOptions是数组类型
'headerHtmlOptions'=>array('width'=>'50px','value'=>'','checked'=>false),//在这里,我使用默认的。
//'footer' => '<button type="button" style="width:76px">批量删除</button>',
//'visible'=>false,
'footer'=>CHtml::button('批量删除',array('onclick'=>'GetCheckbox()','multi_del_url'=>CHtml::normalizeUrl(array('/post/delall/')),'id'=>'mdu','class'=>'button')), ), */
'userid',
'username',
array('name'=>'roleid','value'=>'AdminRole::model()->getRoleName($data->roleid)'),
//'roleid',
'lastloginip',
'lastlogintime',
array('name'=>'email','value'=>'$data->email','htmlOptions'=>array('class'=>'aa')),
//'email',
'realname',
array(
'class'=>'CButtonColumn',
'header'=>'管理操作',
),
),
)); ?>
最终效果截图:
Yii框架zii.widgets.grid自定义按钮
yii CButtonColumn buttons 应用
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'admin-role-grid',
'dataProvider'=>$model->search(),
'template'=>"{items}\n{pager}\n{summary}",
//'filter'=>$model,
'itemsCssClass'=>'width_100',
'columns'=>array(
'roleid',
'listorder',
'rolename',
'description',
'disabled', array(
'class'=>'CButtonColumn',
'template'=>'{update} {delete}',
'updateButtonOptions'=>array('title'=>'修改'),
'deleteButtonOptions'=>array('title'=>'删除'),
'header'=>'管理操作',
/**/
'buttons' => array(
'delete'=>array(
'imageUrl'=>Yii::app()->baseUrl.'/statics/images/admin/delete.gif',//改变删除按钮的图片 如果设为null ( 'imageUrl'=>null) 则显示文字 'deleteButtonOptions'=>array('title'=>'删除'),
),
'update'=>array(
'imageUrl'=>Yii::app()->baseUrl.'/statics/images/admin/edit.gif',
),
),
/**/
),
),
)); ?>
自动获取链接 href
<a href="<?php $this->createUrl("[module/]controller/action")?>"></a>
yii获得当前控制器和action的方法
在控制器里
$con_name = $this->getId();
$action_name = $action->id;
在视图里
$con_name = Yii::app()->controller->id;
$action_name = $this->getAction()->getId(); Yii::app()->getController()->getAction()->id;
yii项目开发项目常用技巧和方法汇总的更多相关文章
- JS~~~ 前端开发一些常用技巧 模块化结构 &&&&& 命名空间处理 奇技淫巧!!!!!!
前端开发一些常用技巧 模块化结构 &&&&& 命名空间处理 奇技淫巧!!!!!!2016-09-29 17 ...
- 2019-2-20C#开发中常用加密解密方法解析
C#开发中常用加密解密方法解析 一.MD5加密算法 我想这是大家都常听过的算法,可能也用的比较多.那么什么是MD5算法呢?MD5全称是 message-digest algorithm 5[|ˈmes ...
- jquery常用函数与方法汇总
1.delay(duration,[queueName]) 设置一个延时来推迟执行队列中之后的项目. jQuery1.4新增.用于将队列中的函数延时执行.他既可以推迟动画队列的执行,也可以用于自定义队 ...
- Android 项目优化(六):项目开发时优化技巧总结
在之前我们讲了很多能够优化 Android 开发项目质量的方案,这些方案更多的是从一些比较专精的方向切入的,阐述的是一些比较重要且独立的优化方案. 本文我们将总结一下在日常开发过程中我们能够使用的一些 ...
- J2EE项目开发中常用到的公共方法
在项目IDCM中涉及到多种工单,包括有:服务器|网络设备上下架工单.服务器|网络设备重启工单.服务器光纤网线更换工单.网络设备撤线布线工单.服务器|网络设备替换工单.服务器|网络设备RMA工单.通用原 ...
- git -- 项目开发最常用操作记录
官方Git - Book https://git-scm.com/book/zh/v2 ------------------------------git配置以及公钥生成--------------- ...
- Java Web项目开发中常见路径获取方法
项目绝对路径 String serverPath = request.getSession().getServletContext().getRealPath("/"); E:\J ...
- 在实际项目开发中keil的调试方法
转载2015-06-14 20:23:04 一.在keilc的调试状态下,如何观察各个片内外设的运行状态?如何修改它们的设置? 在调试状态下,点击Peripherals菜单下的不同外设选项命令,就会 ...
- 项目开发中常用到的SQL语句
阅读目录 循环示例 循环示例 循环示例 循环示例 1.循环示例 在前端面试中最常见的问题就是页面优化和缓存(貌似也是页面优化),被问了几次后心虚的不行,平然平时多少会用到一些,但突然问我,很难把自己知 ...
随机推荐
- web api 跨域请求,ajax跨域调用webapi
1.跨域问题仅仅发生在Javascript发起AJAX调用,或者Silverlight发起服务调用时,其根本原因是因为浏览器对于这两种请求,所给予的权限是较低的,通常只允许调用本域中的资源,除非目标服 ...
- 对React的理解
转自:http://www.cocoachina.com/webapp/20150721/12692.html 现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了R ...
- MySQL - “Timeout error occurred trying to start MySQL Daemon”解决方法
前几天,网站出现Many connections的问题,进入mysql,show full processlist发现有154个进程,晕....直接service mysqld restart 但是不 ...
- View和ViewGroup的区别 -- Touch事件处理
View.java源码: /frameworks/base/core/java/android/view/View.java View.java的 dispatchTouchEvent 方法: 经过一 ...
- QTcpsocket 实现FTP
http://blog.163.com/modingfa_002/blog/static/1109254662013111510358109/ http://baike.baidu.com/link? ...
- Maven构建灵活配置文件
本文解决以下问题: Maven下面启动Main函数: 配置JDK版本 如何配置文件,在开发部署测试各个不同版本间无缝切换配置文件: 启动Main函数 Maven默认是不支持Main函数程序,需要在po ...
- 在mac系统安装Apache Tomcat的详细步骤
对于Apache Tomcat 估计很多童鞋都会,那么今天就简单说下在mac上进行tomcat的安装: 第一步:下载Tomcat 这里Himi下载的tomcat version:7. ...
- nutch 索引
nutch开发环境搭建 nutch-1.3导入eclipse nutch-1.7导入eclipse nutch部署 nutch-1.3linux下部署 nutch-1. ...
- C#编译器对于dynamic对象到底做了什么
private static void TestMethod() { //dynamic 仅仅是个占位符而已 dynamic p1 = , Y = }; //对dynamic对象p1的X属性访问通过C ...
- EditPlus+MinGW搭建简易的C/C++开发环境
EditPlus+MinGW搭建简易的C/C++开发环境 有时候想用C编点小程序,但是每次都要启动那难用又难看的VC实在是不情愿,而且老是会生成很多没用的中间文件,很讨厌,后来看到网上有很多人用Edi ...