Ошибка при добавлении пользовательского действия в kartik dynagrid

У меня есть dynagrid, и я добавляю дополнительный столбец в dynagrid, но это не работает. Я пытался:

<?php
        $columns = [
            ['class' => 'yii\grid\SerialColumn',],                
            'officename',
            [
                'class' => ActionColumn::className(),
                'header' => 'Units',
                'template' => '{add-units}',
                'buttons' => [
                    'assign-roles' => function ($url, $model, $key) {

                        return Html::a("Add Units", $url);
                    }
                ]
            ],

        ];

        echo DynaGrid::widget([
            'columns' => $columns,
            'showPersonalize' => true,
            'options' => ['id' => 'dynagrid-users'],
            'gridOptions' => [
                'dataProvider' => $dataProvider,
                'pager' => [
                    'firstPageLabel' => 'First',
                    'lastPageLabel' => 'Last',
                    'maxButtonCount' => 10,
                ],

                'pjax' => true,
                'bordered' => true,

            ]
        ]) 

        ?>

Добавление единиц не отображает слова (Добавить единицы), что может быть не так


person Geoff    schedule 15.07.2016    source источник


Ответы (1)


Вы настроили шаблон столбца действий и дали новый столбец add-units, но дали другое имя в параметрах кнопки assign-roles. Оба должны быть одинаковыми

         [
            'class' => ActionColumn::className(),
            'header' => 'Units',
            'template' => '{add-units}',
            'buttons' => [
                'add-units' => function ($url, $model, $key) {

                    return Html::a("Add Units", $url);
                }
            ]
        ],
person ck_arjun    schedule 15.07.2016