【问题标题】:How to create a custom action column in kartik gridview如何在 Kartik gridview 中创建自定义操作列
【发布时间】:2017-08-03 10:24:08
【问题描述】:

我正在尝试创建一个显示字形图标的列。 glyphicon 将链接到允许用户下载文件的 url。任何帮助将不胜感激。当前代码如下:

GridView::widget([
'dataProvider' => $dataProvider,
'pager' => [
    'class' => 'common\widgets\Pagination',
],
'columns' => [
    ['class' => 'yii\grid\SerialColumn'],
    [
        'label' => 'Date',
        'attribute' => 'call_datetime',
        'format' => 'date',
    ],
    [
        'label' => 'Time',
        'attribute' => 'call_datetime',
        'format' => 'time',

    ],
    'call_from',
    'call_to',
    'duration',
    'call_type',
    'extension',

    [
        'label' => 'File',
        'attribute' => 'fname',
        'value' => 'callRecFiles.fname',
    ],

这是用户将要下载的最后一个属性“fname”。

【问题讨论】:

    标签: php gridview yii yii2 kartik-v


    【解决方案1】:

    将您的 fname 字段数组更改为:

    [
        'label' => 'File',
        'attribute' => 'fname',
        'value' => function($model) {
             //here create glyphicon with URL pointing to your action where you can download file, something like 
             return $model->callRecFiles ? Html::a('Download', ['myController/download-action', 'fname' => $model->callRecFiles->fname]) : null;
        }
    ],
    

    并准备适当的操作以允许用户下载文件。

    【讨论】:

    • 再次感谢@Yupik。但是,直到我添加 'format' => 'raw' 链接显示为纯文本
    • 谢谢你,尤皮克。感谢凯尔的有用评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多