如何在detailView行中创建URL

时间:2018-02-04 14:32:42

标签: php yii2 yii2-advanced-app detailview

如何在yii2的1::Erin Burkovich::Drama::2000 2::Assassins::Thriller::1995 行中创建网址

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

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']), ], ]) 行。

2 个答案:

答案 0 :(得分:3)

您可以使用速记网址格式化程序(不提供太多自定义选项):

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

raw格式,您可以使用该格式自定义所有内容:

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

答案 1 :(得分:1)

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

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