1.控制器中(以User模块的列表为例): 第一步: use backend\models\User;use yii\data\ActiveDataProvider; 第二步: public function actionIndex(){ $model=new User(); $dataProvider = new ActiveDataProvider([ 'query' => User::find()->orderBy('id'),//此处添加where条件时:'query'=>Use…
在使用yii2构建搜索视图,经常都会使用到gridview这个组件,这个组件十分强大,通过一定的配置就能进行关联搜索,下面就是简单的步骤 需求场景:一个车系表,里面存放在品牌表的id,现在要用品牌名字进行like搜索对应的车系 1.用gii生成一个与Model对应的Search; 2.在Search中,增加一个属性,名为$brand_name; class SeriesSearch extends Series { public $brand_name; // 品牌名字,随便起名 3.在Sear…
GridView小部件用于展示多条数据的列表.GridView小部件的使用需要数据提供器即yii\data\ActiveDataProvider的实例作为参数,所以 第一步就是要在控制器方法中创建这个实例然后传给视图,下面以我做的一个demo为例子进行讲解. 控制器LifeController代码: //生活记录列表 public function actionIndex() { $searchModel = new Life(['scenario' => Life::SCENARIO_SEAR…
Yii2框架下的Gridview通常用来展示一张DB表中的数据,十分方便.这里只说一下经常要用到的一些小技巧,其实大多数官方文档都是有的,只是有可能需要在多个文档里. 自动创建的gridview示例. 1. 不显示Gridview自带的记录序列. 删除视图文件里下面这一行代码. ['class' => 'yii\grid\SerialColumn'] 2.字段名称居中对齐 视图里自定义headerOptions. "headerOptions" => ['style' =&…
Yii2 GridView与dropdownList结合的用法 http://www.yiichina.com/tutorial/473 <?=$form->field($model, 'provinces')->dropDownList(ArrayHelper::map(common\models\GlobalRegion::find()->where(['region_type'=>1])->asArray()->all(),'region_id','regi…
<?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ ['class' => 'yii\grid\SerialColumn'], 'id', 'parent', 'lft', 'rht', 'name', ['class' => 'yii\grid\ActionColumn','header'=>'操作','temp…
1. 导出excel的实现方法 (1)使用phpexcel封装工具类导出excel (2)使用爬虫爬取页面再处理封装工具类导出excel (3)使用页面渲染后处理html添加头部信息生成excel文件的js导出 (4)使用GridView视图组件自带的导出功能 2.代码实现(使用GridView视图组件自带的导出功能) <?= kartik\grid\GridView::widget([ 'tableOptions' => ['class' => 'table table-striped…
我们知道GridView组件非常方便,会自动生成数据表格.table tr td神马的全自动生成的.但是如果想定制化稍微有点难度. 比如想在某列td上应用样式. 老写法是这样的 <?= GridView::widget([ 'dataProvider' => $dataProvider, 'layout' => "{items}\n{pager}\n{summary}", 'summary' => '<p class="summary"…
给checkbox(在GridView里的)添加一个value 控制器:$dataProvidermStu->key = "student_no"; view:[ 'class' => 'yii\grid\CheckboxColumn', 'checkboxOptions' => function ($model, $key, $index, $column) { return ['value' => $key]; }], 像js数组中增加元素在数组的开头添加新…
ListView是yii框架中类似GridView,也是用于展示多条数据的小部件,相比GridView,ListView可以更加灵活地设置数据展示的格式. 下面以我自己做的一个使用ListView来展示数据的例子,来简单讲解一下ListView小部件的使用. 首先需要在控制器中new一个数据提供器,传给视图,示例代码如下: public function actionIndex() { $dataProvider = new ActiveDataProvider([ 'query' => Dia…
yii2的gridview使用大全 --- 18个问答 Yii2中多表关联查询(hasOne.hasMany.join.joinwith) Yii2.0 RESTful API 之速率限制(包含restful api风格配置)…
YII2中ActiveDataProvider可以使用yii\db\Query或yii\db\ActiveQuery的对象,方便我们构造复杂的查询筛选语句. 配合强大的GridView,快速的显示我们想要的数据. 通过上面的两个工具,我们快速的显示用户表信息.用户表结构如下: 我们创建一个用户模型MyUser.php,代码如下: <?php namespace app\models; use yii\db\ActiveRecord; use yii\data\ActiveDataProvider…
今天仍然继续探讨GridView的问题,昨天有个小伙伴留言说你用gridview给我去掉表头的链接?我想啊想,这用gridview确实不容易实现,至少我没想出来,会的下方可留言.但是呢,这根gridview有个毛线关联啊,明明是要设置ActiveDataProvider,你要我怎么用gridview实现嘛. 这个问题也是很简单的,我们来看看具体实现 $dataProvider = new ActiveDataProvider([ "query" => $query, ]); $d…
作者:白狼 出处:http://www.manks.top/article/yii2_gridview_deleteall本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 今天仍然继续探讨GridView的问题,昨天有个小伙伴留言说你用gridview给我去掉表头的链接?我想啊想,这用gridview确实不容易实现,至少我没想出来,会的下方可留言.但是呢,这根gridview有个毛线关联啊,明明是要设置ActiveDataP…
最近刚开始用yii2,真是超棒的,但是也有许多不足的地方,今天要说的就是GridView链接问题.   <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ ['class' => 'yii\grid\SerialColumn'], 'id', 'username', 'email', ['class' => 'yii\g…
Yii2 GridView 使用起来很方便,但是默认排序很是个问题,数据默认按 主键 正序排列 但是在使用过程中,大多数数据默认是 倒序才符合正常思维的. 第一次 的解决方法是在 直接为 Model添加排序orderBy('id DESC')或addOrderBy('id DESC')数据理所当然的按照id 倒序排列,但是这样导致新的问题发生 用户在浏览数据的时候 指定排序不管了,但是也一直没去理会,毕竟需求小. 最近在使用由于到问题,决定彻底解决,最后通过翻看源码 找到 yii\data\So…
Filtering the data we have on our GridView by dates are sometimes very important. On this article I am going to show you how easy is to add a date range filter to your Yii2 GridViews. The DateRange picker plugin For this tutorial we are going to use…
作者:白狼 出处:http://www.manks.top/article/yii2_gridview 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 收集了网络上GridView出现的大部分问题做一个总结,希望有一个能帮助到你. 如果下面有没说到的GridView常见问题,下方留言,我会进行补充. 下拉搜索 日期格式化并实现日期可搜索 根据参数进行是否显示 链接可点击跳转 显示图片 html渲染 自定义按钮 设定宽度等样…
下面以管理员列表为例说明Activedataprovider分页的具体使用 1.控制器中 public function actionIndex(){ $model=new Admin(); $dataProvider = new ActiveDataProvider([ 'query' => Admin::find()->orderBy('id'), 'pagination' => ['pageSize' => 5],//此处为分页设置,其中5为每页显示5条 ]); return…
YII2 Gridview 部分使用规则 1.页面显示的时间戳转换 a. [ 'label'=>'创建日期', 'attribute' => 'created_at', 'filter' => false, //不显示搜索框 'value' => function($data) { return date('Y-m-d H:i:s',$data->created_at); } ], b. [ 'label'=>'创建日期', 'attribute' => 'cre…
Gridview 网格小部件 一.特点: 1.是yii中功能最强大的小部件之一: 2.非常适合快速建立系统的管理后台. 3.用 dataProvider 键来指定数据的提供者 4.用 filterModel     键指定一个能够提供搜索过滤功能的搜索模型类 5.用columns 键指定需要展示的键及其格式 <?= GridView::widget([ 'dataProvider' => $dataProvider, // dateProvider 键数据提供者 'filterModel' =…
我们知道Yii中的GridView组件是非常好用的. 某些情况要动态显示某列,这时候就要用到visible属性 'propString' => ['attribute' => 'propertyNamesStringV2','format' => 'raw', 'visible' => isset($_GET['pno']) ? true : false], 注意rowOptions. 根据文档他可以接收数组或匿名函数.将判断逻辑写到匿名函数里面.当满足就给当前行加个隐藏的clas…
Yii2.0在GridView中下拉过滤筛选的实现 细微的方便也许对于我们的用户来说将会获得最好的体验,用最方便,最快捷,最易操作的方式实现用户需要的功能是我们的工作和职责,今天分享一个在Yii2.0在GridView中下拉过滤筛选的实现,希望能够大家带来一点点的帮助和建议,不说废话了,直接看demo吧 如下是文章管理列表页中如何实现的demo view层代码 <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterMode…
1./vendor/yiisoft/yii2/web/UrlManager.php 方法createUrl 修改url参数转码2.config/web.php 配置文件Yii::$app(应用主体)的相关参数/注册应用组件3.Model验证器 方法rules() 4.advanced安装 下载压缩包并解压到blogdemo2 cmd进入blogdemo2 ~$ php init ~$ 0 ~$ yes 安装成功 新建数据库blogdemo2 /common/config/main-local.p…
Yii2 Working with Relational Data at ActiveDataProvider namespace common\models; use Yii; use yii\base\Model; use yii\data\ActiveDataProvider; use common\models\Recording; /** * RecordingSearch represents the model behind the search form about `commo…
采用的是yii2.0.14版本,为了学习方便,以问答式书写. 开始GridView GridView主要是为了实现表格复用,尤其我们做后台的时候,你发现表单和表格占据了大部分页面,而表格的样式又是高度的统一,那么如果有这样一个挂件,传入数据集自动渲染表格该多好. 于是GridView出现了,一个有细节.够稳定的表格渲染挂件. 通常情况下GridView是和各种dataProvider配合使用,针对于yii2框架中的dataProvider我之前写过一篇文章,你可以看下,这将有助于你对GridVi…
作者:白狼 出处:http://www.manks.top/article/yii2_gridview_dropdown_search本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 下拉搜索,我们先来看看预期的效果图 具体怎么实现喃?考虑到一张数据表要下拉效果的字段可能有很多个,我们先在其model中实现一个方法方便后续操作 /** * 下拉筛选 * @column string 字段 * @value mix 字段对应的…
作者:白狼 出处:http://www.manks.top/article/yii2_gridview_dateformat_search 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 日期格式化,我们先来看看效果图 这个我们分情况讨论 1.如果你的数据库字段created_at存的时间格式是date或者datetime,那很简单,gridview中直接输出该字段created_at即可,如上图中右侧所示 2.如果数据库…
yii框架twig模板中使用GridView::widget 需要这样写: {{ grid_view_widget({ 'dataProvider': provider, 'columns': [ 'id', {'attribute' : 'create_user_id', 'label' : '用户ID'}, {'attribute' : 'category_id','value':ticketCategory, 'label' : '问题分类'}, {'attribute' : 'langu…
作者:白狼 出处:http://www.manks.top/article/yii2_gridview_visible 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 我们举一个简单的案例 条件:有一个get形参数type 需求:仅且type的值等于1的时候,列name才显示,否则该列不显示 代码实现如下: [ 'attribute' => 'name', 'value' => $model->name, 'vis…