yii2 模板twig中使用GridView::widget
yii框架twig模板中使用GridView::widget 需要这样写:
{{ grid_view_widget({
'dataProvider': provider,
'columns': [
'id',
{'attribute' : 'create_user_id', 'label' : '用户ID'},
{'attribute' : 'category_id','value':ticketCategory, 'label' : '问题分类'},
{'attribute' : 'language', 'value':languageAction, 'label' : '语言'}, //languageAction为需要单独处理的数据,模板不支持PHP语法,需要从控制器返回
{'attribute' : 'support_user_id','value':supportUser, 'label' : '受理人'},
{
'attribute': 'create_time',
'format':['datetime', 'yyyy-MM-dd HH:mm:ss'],
'label': ' 创建时间',
},
{
'attribute': 'update_time',
'format':['datetime', 'yyyy-MM-dd HH:mm:ss'],
'label': ' 更新时间',
},
{
'attribute': 'response_time',
'value':responseTime,
'label': ' 响应时间(分)',
},
{'label':'操作', 'value':actionFunction, 'format':'raw'},
]
}) }}
模板里面不支付PHP写法,比如language字段value值数据库存入标识,而前台页面需要显示对应表示的内容,可以在控制器层将数据处理好,以变量的方式发送到前端页面:
$languageAction = function ($model)
{
switch ($model->language)
{
case Ticket::LANGUAGE_ZH :
return $model->language = '中文';
case Ticket::LANGUAGE_EN :
return $model->language = '英文';
case Ticket::LANGUAGE_OTHER :
return $model->language = '其他';
}
};
return $this->controller->render('index',['provider' => $data,'languageAction' => $languageAction]);
yii2 模板twig中使用GridView::widget的更多相关文章
- Yii2学习笔记---内附GridView配置总结
1./vendor/yiisoft/yii2/web/UrlManager.php 方法createUrl 修改url参数转码2.config/web.php 配置文件Yii::$app(应用主体)的 ...
- 【初学者指南】在ASP.NET MVC 5中创建GridView
介绍 在这篇文章中,我们将会学习如何在 ASP.NET MVC 中创建一个 gridview,就像 ASP.NET Web 表单中的 gridview 一样.服务器端和客户端有许多可用的第三方库,这些 ...
- Android中使用GridView和ImageViewSwitcher实现电子相册简单功能
我们在手机上查看相册时,首先看到的是网格状的图片展示界面,然后我们选择想要欣赏的照片点击进入,这样就可以全屏观看该照片,并且可以通过左右滑动来切换照片.如下图的显示效果: 首先我们先罗列一下本次实现所 ...
- dotNet平台模板列中的单选无效的解决方案
最近在grid里添加一个单选列,最开始直接创建一个模板列,然后在模板列里放一个radiobutton.并指定其GroupName.这是radiabutton最常用的方法.但是在Grid里,这样却毫无效 ...
- asp.net 中给gridview添加自动序号
第一种方式,直接在Aspx页面GridView模板列中.这种的缺点是到第二页分页时又重新开始了. 代码如下: <asp:TemplateField HeaderText="序号&quo ...
- yii2模板
GridView 小部件在开发中常用的功能及技巧.持续更新中.... 数据网格或者说 GridView 小部件是Yii中最强大的部件之一.它有一个属性名叫 dataProvider ,这个属性能够提供 ...
- Javascript模板及其中的数据逻辑分离思想(MVC)
#Javascript模板及其中的数据逻辑分离思想 ##需求描述 项目数据库的题目表描述了70-120道题目,并且是会变化的,要根据数据库中的数据描述,比如,选择还是填空题,是不是重点题,题目总分是多 ...
- C++中模板函数或模板类中关键词class和typename
##区别 基本上来说,class和typename几乎没有区别.在可以使用class的地方都可以使用typename,在使用typename的地方也几乎可以使用class. 可以看出我加黑了两个子:几 ...
- [置顶] gridview中嵌套gridview(并实现子gridview的数据绑定),页面传值,加密,数据绑定
先来张效果图 gridview 中嵌套gridview的原理是这样的,在父gridview中建一个摸板列,然后再模版列当中在放入子gridview,然后再父gridview的OnRowDataBoun ...
随机推荐
- 微软 workflow 工作流总结
1.状态机工作流 (1)状态机工作流从state1 流转到 state2 到stateN (2) state中有执行状态和退出状态 (3) 在进入下一个步骤(state1 到 state2)前,首先会 ...
- 在Windows2008下安装SQL Server 2005无法启动服务的解决办法
在Windows2012下安装SQL Server 2005无法启动服务的解决办法 1.正常安装任一版本的SQL Server 2005. 2.安装到SqlServer服务的时候提示启动服务失败 此 ...
- mysql表关联
mysql的表关联: left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner ...
- 比sort()性能更好的原生js代码实现数组从小到大排序
nums = [1,2,4,1,34,6,-1,2] for(let i = nums.length - 1; i > 0; i--) { let maxIdx = i; for(let j = ...
- JavaScript数组方法--pop、shift、unshift
其实还有一个方法push,应该放在一起说的,问题是他跟concat跑了,那只剩下这哥仨了. pop:pop()方法从数组中删除最后一个元素,并返回该元素的值.此方法更改数组的长度.捎带一下push,p ...
- Angular6 Observable.fromEvent error: “Invalid event target”
今天在angular6项目中写了个拖拽功能,但是控制台报错,如图 后来在控制台打出发现,原来是 ngOnInit( ) 这个生命周期里,页面的dom节点还未产生,还只是null. 改为用 ngAfte ...
- redis--解析字符串
# coding=utf-8import codecs if __name__ == '__main__': cmdlist = ("Decode") while True: cm ...
- Delphi ClientDataSet 主从结构 BUG
使用ADO控件 .ClientDataSet .增加了从表与主表的关连字段 SheetID,别的设置全为默认.如图1所示 图1 ======= 问题 BUG: 打开主表与从表,先不对主表进行任何操作. ...
- H5使用codovar插件实现微信支付(微信APP支付模式,前端)
H5打包的app实现微信支付及支付宝支付,本章主要详解微信支付,支付宝支付请查看另一篇“H5使用codovar插件实现支付宝支付(支付宝APP支付模式,前端)” ps:本文只试用H5开发的,微信 AP ...
- turtle画戒指
import turtleturtle.bgcolor('black')turtle.speed(5)turtle.pensize(3)for i in range(1,5): turtle.righ ...