yii2在GridView中设置ActionColumn的默认配置

时间:2018-04-06 20:36:27

标签: php gridview yii2

我想为所有GridView设置默认配置。 我这样做了如下:

应用\设置\ web.php:

require __DIR__ . '/container.php';

应用\设置\ container.php:

use yii\helpers\Html;
use yii\helpers\Url;

\Yii::$container->set('yii\grid\GridView', [
    'layout' => "{items}\n{summary}\n{pager}",
    'columns' => [
        [
             'class' => 'yii\grid\ActionColumn',
             'template' => '{edit}{update}',
             'buttons' => [
                'edit' => function ($url, $model) {
                  return Html::a('<span class="glyphicon glyphicon-pencil"></span>', [Url::to(['edit', 'id' => $model->id])]);
                },
             ],

        ],
    ],
]);

我定义layout的部分可以正常工作。

但显然ActionColumn的部分不起作用,因为当我在列表中实际使用GridView时,整个数组索引'columns'会被列名覆盖。 / p>

如何为所有GridView设置ActionColumn的默认设置?

1 个答案:

答案 0 :(得分:0)

尝试单独设置ActionColumn的默认值:

\Yii::$container->set('yii\grid\ActionColumn', [
    'template' => '{edit}{update}',
    'buttons' => [
        'edit' => function ($url, $model) {
            return Html::a('<span class="glyphicon glyphicon-pencil"></span>', [Url::to(['edit', 'id' => $model->id])]);
        },
    ],
]);