如何让URL的detailView行

How to make URL in detailView row

如何在 yii2 的 DetailView 行中创建 URL

例如:blow 代码类似于 GridView 中的自定义行,但如您所知 DetailView 不同,此代码在 DetailView 中不起作用。

 <?= DetailView::widget([
      'model' => $model,
      'attributes' => [
   [
   'attribute' => 'file',
   'label' => 'File',
   'fomat' => 'Url', // I want something like this
   'value' => Html::a('Dowaload The File', ['files/uloads']),
   ],
])

我还没有在类似的问题中找到我的问题的解决方案。

请帮我在 DetailView 中创建 Url 行。

您可以使用 shorthand url 格式化程序(不提供太多自定义选项):

'attributes' => [
  'file:url'
]

或者您可以自定义所有内容的 raw 格式:

'attributes' =>[
  [
    'attribute'=>'file',
    'label'=>'File',
    'format'=>'raw',
    'value'=>Html::a('Download the File', url),
  ],
...

您可以通过以下方式在详细视图中创建下载文件 link,我假设下载文件路径来自数据库字段 file

 <?= DetailView::widget([
      'model' => $model,
      'attributes' => [
         [
         'attribute' => 'file',
         'label' => 'File',
         'value' => function ($model) {
              return Html::a('Download The File', $model->file);
          },
          'format' => 'raw',
         ],
      ]
]);