2016-10-11 2 views
0

У меня есть сетка и я хотел бы реализовать образ, но он всегда возвращает путь к изображениюОтображение изображения в Картик сетки показывает путь

это код:

[ 
    'attribute' => 'picture', 
    'value'=>function($data) { return $data->imageurl; }, 
    'value' => function ($data) { 
     return Html::img(Yii::getAlias('@web').'/images/user_accounts.png', 
      ['width' => '70px']); 
    }, 

], 

выше идеи я получил от This link, но он не

Я также попытался:

[ 
    'attribute' => 'picture', 
    'value'=>function($data) { return $data->imageurl; }, 

], 

И добавил

public function getImageurl() 
    { 
     return \Yii::$app->request->BaseUrl.'/images/user_accounts.png'; 
    } 

Но он по-прежнему не удается отобразить изображение в сетке

Это то, что отображается enter image description here

ответ

1

Попробуйте это:

[ 
    'attribute' => 'picture', 
    'format' => 'html',  
    'value' => function ($data) { 
     return Html::img(Yii::getAlias('@web').'/images/'. $data['imageurl'], 
      ['width' => '70px']); 
    }, 
], 
+0

работы Благодаря формат –

1

Используйте атрибут класса DataColumn format, по умолчанию он использует текстовый формат, поэтому содержимое отображается как текст вместо html. Используйте сырые или HTML форматтеры

0
>>>This may be helpfull too... 
      [ 
      'attribute' => 'picture', 
      'format' => 'html', 
      'value' => function ($data) { 
        return Html::img($data->imageurl,['width' => '80px']); 
      }, 
      'filterType' => GridView::FILTER_SELECT2, 
      'filter' => '', 
      'filterWidgetOptions' => [ 
       'pluginOptions' => ['allowClear' => true], 
       ], 
       'filterInputOptions' => ['placeholder' => 'Image Url'], 
      ], 
Смежные вопросы