2016-04-01 7 views
0

Ben yii için yeniyim, greyview tablosunda bir resim görüntülemek istiyorum, anyhelp takdir edilecektir, aşağıda benim kod. Yukarıdaki kod yalnızca img alt Herhangi gösterilen ince görüntü ekranı çalışmıyorResim nasıl greyview görünümünde yii2

public function actionIndex() 
{ 
    $searchModel = new ProductSearch(); 
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams); 

    //$models = $dataProvider->getModels(); 

    return $this->render('index', [ 
     'searchModel' => $searchModel, 
     'dataProvider' => $dataProvider, 
     //'models' => $models, 
    ]); 
} 

görünümü .... aşağıda DataProvider'ın kullanarak ve kulüpler

<?= GridView::widget([ 
    'dataProvider' => $dataProvider, 
    //'filterModel' => $searchModel, 
    'columns' => [ 
     //['class' => 'yii\grid\SerialColumn'], 

     'product_id', 
     'name', 
     'descr', 
     'price', 
     //'image', 
      [ 
     'attribute'=>'image', 
     'label'=>'Image', 
     'format'=>'html', 

     'value' => function ($data) { 
       $url = \Yii::getAlias('@backend/web/').$data['image']; 
       return Html::img($url, ['alt'=>'myImage','width'=>'70','height'=>'50']); 
     } 
     ], 

     'views', 
     ['class' => 'yii\grid\ActionColumn'], 
    ], 
    'tableOptions' =>['class' => 'table table-striped table-bordered'], 

benim denetleyicisi olan Bu çalışmanın nasıl yapılacağı konusunda yardım edin, teşekkürler

+0

Sizin sorun görüntü yoludur. – Farshid

cevap

0

Görüntü sütunu için 'biçim' öğesini belirtin ve görüntü verisi için 'raw' değerini belirtin ve $ data olmalıdır. Bu nedenle, 'image' alanına $ data-> ile erişilebilir. görüntüsü. senin dizin dosyası kök dizin İşte

$url =Yii::$app->request->baseUrl.'/'.$data['image']; 
1

Kontrol size resim yolu, Sen

Yii::$app->request->baseUrl 

kullanabilirsiniz çözümdür:

[ 
     'attribute' => 'Icon', 
     'format' => 'html', 
     'label' => 'Icon', 
     'value' => function ($data) { 
     return Html::img(Yii::$app->request->BaseUrl.'/uploads/path/' . $data['Icon'], 
     ['width' => '60px']); 
    }, 
], 
2

açıksa

 [ 
    'attribute'=>'image', 
    'label'=>'Image', 
    'format'=>'raw', 

    'value' => function ($data) { 
      $url = \Yii::getAlias('@backend/web/').$data->image; 
      return Html::img($url, ['alt'=>'myImage','width'=>'70','height'=>'50']); 
    } 
    ],