Php 将按钮添加到yii2中的栅格视图

Php 将按钮添加到yii2中的栅格视图,php,web,yii2,php-5.3,Php,Web,Yii2,Php 5.3,我是一个新的yii2开发者! 我制作了一个GridView,代码如下所示: <?php Pjax::begin(); ?> <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ ['class' => 'yii\grid\Acti

我是一个新的yii2开发者! 我制作了一个GridView,代码如下所示:

<?php Pjax::begin(); ?>    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\ActionColumn'],
            ['class' => 'yii\grid\CheckboxColumn'],
            ['class' => 'yii\grid\SerialColumn'],
            'id',
            'countryCode',
            'countryName',
            'currencyCode',
        ],
    ]); ?>
    <?php Pjax::end(); ?>

输出的屏幕截图:

现在我想让一列包含一些按钮,例如打开一个页面或其他东西! 我的问题是如何创建该列?

示例:

<?php Pjax::begin(); ?>
<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        ['class' => 'yii\grid\ActionColumn'],
        ['class' => 'yii\grid\CheckboxColumn'],
        ['class' => 'yii\grid\SerialColumn'],
        'id',
        'countryCode',
        'countryName',
        'currencyCode',
        [
            'label' => 'My Label',
            'format' => 'raw',
            'value' => Html::a('Click me', ['site/index'], ['class' => 'btn btn-success btn-xs', 'data-pjax' => 0])
        ]
    ],
]); ?>
<?php Pjax::end(); ?>

尝试以下方法:

[
            'header' => 'Button',
            'content' => function($model) {
                return Html::a(..);
            }           
],

您也可以像这样将按钮(或任意数量的按钮)添加到现有的“操作”列中

<?= GridView::widget([
    ::
    ::
    'columns' => [
        [
            'class' => 'yii\grid\ActionColumn',
            'template' => '{view} {update} {delete} {myButton}',  // the default buttons + your custom button
            'buttons' => [
                'myButton' => function($url, $model, $key) {     // render your custom button
                    return Html::a(..);
                }
            ]
        ]
        ::
        ::
        'currencyCode'
    ]   
]); ?>


谢谢!!我现在写这段代码:
'countryCode','countryName','currencyCode',['header'=>'按钮','content'=>函数($model){return Html::a($text='Test',$url='Test')https://www.google.com');                     }             ],
现在我有另一个问题,如何从数据库中将此按钮的文本变成一个东西?我的意思是,我怎么能有一个countryname列,它实际上是一个按钮而不仅仅是文本@英萨斯库勒和。添加任何你想要的html样式。对不起,我不明白!我知道$key是ID,但我如何获取数据库的文本?@sass。你是说数据库价值?它位于
$model
variable.yes数据库中。我的意思是,例如按钮或链接标记在第6行,那么标记的文本就是数据库值之一!我写了这段代码,但它不对:
'content'=>函数($model,$key,$index,$column){return Html::a($text=$model,$url='google.com');}
Hello。我在哪里可以找到一些关于这方面的文档?@depro希望这将有助于作为一个起点