Yii在CDetailView中显示图像

时间:2014-02-11 06:53:22

标签: php yii cdetailview

我已将图像存储在Images Folder(root)中我的Yii项目中。我想在CDetailView中显示图像,该图像位于protected / view / college

我的代码

array(
            'label'=>'CollegeLogo',
            'type'=>'raw',
            'value'=>CHtml::image("../".Yii::app()->baseUrl."/Images/".$model->CollegeLogo),

        ),

它不能正常工作

5 个答案:

答案 0 :(得分:3)

<?php 

$this->widget('zii.widgets.CDetailView', array(

    'data'=>$model,
    'attributes'=>array(
        'title',
        'date',
        'description',
         array(
            'type' => 'raw',
            'value'=>CHtml::image(Yii::app()->baseUrl."/upload/".$model->image,'alt',array("width"=>"50px" ,"height"=>"50px"))
            ),
        'time',
        'user_id',
    ),
)); ?>

答案 1 :(得分:2)

删除代码中的"../"。 Baseurl将从根文件夹返回路径。

'value'=>CHtml::image(Yii::app()->baseUrl."/Images/".$model->CollegeLogo),

答案 2 :(得分:1)

试试这个

'value'=>CHtml::image(Yii::app()->getBaseUrl(true) . '/Images/'.$model->CollegeLogo),

答案 3 :(得分:0)

最简单的方法是将string format "Name:Type:Label"Image Type

一起使用
<?php
'attributes' => array(
  "CollegeLogo:image",
  //...
),

如果CollegeLogo属性没有返回绝对网址,我会在模型中创建一个返回它的virtual attribute

public function getCollegeLogoUrl() {
    return "../".Yii::app()->baseUrl."/Images/".$model->CollegeLogo;
}

然后在小部件中使用它:

<?php
'attributes' => array(
  "collegeLogoUrl:image",
  //...
),

答案 4 :(得分:0)

此代码有效

array(
            'label'=>'CollegeLogo',
            'type'=>'raw',
            'value'=>CHtml::tag('img',
                array("title"=>"CollegeLogo",
                "src"=>Yii::app()->baseUrl."/CollegeImages/".$model->CollegeLogo,
                "style"=>"height:70px")
            )
        ),