nick-denry / yii2-filter-action-column
带有自定义过滤内容字段的 Yii2 GridView ActionColumn 组件
0.1.2
2018-03-11 00:56 UTC
Requires
- php: >=5.6
- yiisoft/yii2: >=2.0.11
This package is auto-updated.
Last update: 2024-09-05 08:39:50 UTC
README
为 Yii2 GridView 提供带有过滤内容支持的 ActionColumn
为 yii2 GridView 提供带有 filterContent 选项的 ActionColumn(ActionColumn 标题按钮)
预览
与 AdminLTE 一起
安装
通过 composer 安装此扩展是首选方式。
运行以下命令之一:
php composer.phar require --prefer-dist nick-denry/yii2-filter-action-column
或者
"nick-denry/yii2-filter-action-column": "^0.1.0"
将以下内容添加到您的 composer.json
文件的 require 部分中。
使用方法
-
设置
1.1. 在您的 GridView 视图中
use nickdenry\grid\FilterContentActionColumn;
1.2. 将您的默认
ActionColumn
替换为[ 'class' => FilterContentActionColumn::className(), // Add your own filterContent 'filterContent' => function() { return '<div class="btn-group"> '. Html::a('<i class="fa fa-search"></i> Search', ['#'], [ 'class' => 'btn btn-default search-filter', 'title' => 'Find page', ]). Html::a('<i class="fa fa-times"></i>', [''], [ 'class' => 'btn btn-default reset-search-filter', 'title' => 'Reset filter', ]). '</div>'; }, /* Another actionColumn options */ ],
-
每个操作按钮的附加选项
扩展通过名称提供 GridView 操作按钮的附加选项,例如
为每个按钮设置单个类
[ 'class' => FilterContentActionColumn::className(), // Set custom classes 'buttonAdditionalOptions' => [ 'view' => ['class' => 'btn btn-lg btn-success'], 'update' => ['class' => 'btn btn-default btn-sm'], 'delete' => ['class' => 'btn btn-danger btn-sm'], ], ... // Add your own filterContent ],
或者按常规设置
buttons
'buttons' => [ 'view' => function($url, $model, $key) { return Html::a( Html::tag('span', '', ['class' => "glyphicon glyphicon-eye-open"]), ['some/url'], [ 'class' => 'btn btn-default btn-sm', // Here is simple string class 'target' => '_blank', ]); } ],
额外设置
-
按应用程序设置按钮类。
3.1. 通过应用程序配置中的 DI
'container' => [ 'definitions' => [ nickdenry\grid\FilterContentActionColumn::class => [ 'buttonAdditionalOptions' => [ 'view' => ['class' => 'btn btn-default btn-sm'], 'update' => ['class' => 'btn btn-default btn-sm'], 'delete' => ['class' => 'btn btn-danger btn-sm'], // You could also set your "extra" button class // like you point it in "template" option // i.e. 'template' => '{view} {update} {delete} {extra}', 'extra' => ['class' => 'btn btn-success btn-sm'], ], ], ], ],
附加信息
3.2. 如果您想覆盖某些默认按钮,但保持其“全局”的应用程序类属性
'buttons' => [ 'view' => function($url, $model, $key, $additionalOptions) { return Html::a( Html::tag('span', '', ['class' => "glyphicon glyphicon-eye-open"]), ['some/url'], [ 'class' => $additionalOptions['class'], 'target' => '_blank', ] ); }, ]
-
自定义删除确认文本
通过
deleteConfirmText
属性[ 'class' => FilterContentActionColumn::className(), // Confirmation text 'deleteConfirmText' => function($model) { return 'Are you sure you want to delete "'.$model->title.'" page?'; }, ... // Add your own filterContent ],
或者简单地
[ 'class' => FilterContentActionColumn::className(), // Confirmation text 'deleteConfirmText' => 'Custom confirmation', ... // Add your own filterContent ],