2014-01-19 32 views
0

與$數據 - >值顯示外部圖像這讓我踩在過去的幾個小時,我無法找到如何正確地使它工作。所有的解決方案是本地圖片,但我在http://崩潰的:Yii的 - 在GridView控件

這是我有:

$this->widget('bootstrap.widgets.TbGridView', array(
    'dataProvider' => $dataProvider, 
    'columns' => array(
     'name', 
     array(
      'name' => 'url', 
      'type' => 'raw', 
      'value'=> 'CHtml::image(http://my.domain.com/images/' . $data->url . ')', 
     ), 
    ), 
)); 

我已經嘗試添加參數,如類,逃避域,加入雙引號域,但沒有奏效。誰能幫忙?

回答

1

試試這個

'value'=>function($data) { return addslashes(CHtml::image(Yii::app()->baseUrl.'/images/' . $data->url)); }, 

工作對我來說,即使沒有,雖然逃脫//使用和addslashes。

對於外域 -

'value'=>function($data) { return addslashes(CHtml::image('http://www.google.com'.'/images/' . $data->url)); }, 
+0

我想使用一個外部域,而不是相對路徑上我自己的域名。 – Mave

+0

也應該爲外部域工作,請檢查編輯。 – Rohan

1

在值,你必須通過網址,做爲了CHtml ::圖像功能串。

嘗試以下代碼:

'value'=> 'CHtml::image("http://my.domain.com/images/' . $data->url . '")', 
0
 array(
      'name' => 'url', 
      'type' => 'raw', 
      'value' => function($data) { return CHtml::image("http://my.domain.com/images/data->url"); }, 
     ), 

我通過使用上述代碼固定它。可悲的是,兩個答案都沒有如預期的那樣奏效。