【问题标题】:How to write Gridview code in Yii2 Detail View [duplicate]如何在 Yii2 详细视图中编写 Gridview 代码 [重复]
【发布时间】:2015-11-20 00:45:59
【问题描述】:

在这里我想清楚地解释我的问题,

以下代码用于存储附件地址,在gridview中我已将其作为链接,因此如果我单击链接,它将显示链接上的文件

这是网格视图代码:

          [
             'label'=>'document_details',
             'format'=>'raw',
             'value' => function($model){
                    $data = $model->document_details;
                    $url = explode(',', $data);
                    $result = "";
                    foreach ($url as $key => $value) {
                        $result .= Html::a($value, $value);
                    }

                    return $result;
                 }
            ],

但问题是无法在详细视图中执行此操作,我不知道该怎么做。

【问题讨论】:

  • gridview 是什么意思?

标签: yii2 detailview


【解决方案1】:

更新: 从 2.0.11 版本开始,可以使用函数来获取值。看看DetailView::$attributes


看看这个官方example。它与 GridView 的工作方式不同。您还可以在此处指定应考虑的属性列表。但方式不同:您没有指定从何处获取值的函数。相反,您必须直接告诉 DetailView 该值。你可以这样做:

function createDocDetailUrls($model) {
    $data = $model->document_details;
    $url = explode(',', $data);
    $result = "";
    foreach ($url as $key => $value) {
        $result .= Html::a($value, $value);
    }

    return $result;
}

echo DetailView::widget([
    'model' => $model,
    'attributes' => [
        //... other attributes
        [
            'label' => 'Document details',
            'format'=> 'raw'
            'value' => createDocDetailUrls($model),
        ],
        //... other attributes
    ],
]);

类似的问题是here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 1970-01-01
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多