2017-05-30 68 views
0

我的要求是,在点击用户头像(个人资料图片)时,它应该导航到Yii2的详细视图中的用户个人资料页面。Yii2如何使图像成为超链接的详细视图

目前,我可以用下面的代码来显示图像:

[ 
    'attribute'=>'Supplier profile', 
    'format' => 'image', 
     'value' => function ($model) { 
     return $model->user->filename; 

     },     
    ], 

通过改变上面的代码为HTML像什么显示(见下面的代码)

[ 
    'attribute'=>'Supplier profile', 
    'format' => 'image', 
     'value' => function ($model) { 
     return Html::a(Html::encode($model->user->filename), [ 'view3', 'id' => $model->id]); 

     },     
    ], 

如何我把图像作为链接?

回答

2

试试这个:

[ 
    'label'=>'Image', 
    'format'=>'raw', 
    'value' => function($model){ 
      return Html::a(Html::img($model->user->filename, ['alt'=>'yii']), [ 'view3', 'id' => $model->id]); 
    } 
], 
+1

谢谢@AmirKH,它的工作原理 – Olivia

0

这样的:

return Html::a(Html::img(Yii::getAlias('@img-url'). '/airline.jpg'),['index']) 
+0

就我而言,我不是每次都取相同的图像,我需要显示存储在DB中的那个。所以这不会起作用 – Olivia

+0

你必须在你的属性gridview中使用该代码,而不仅仅使用 –