无法在 CDetailView Yii 1.1 中显示图片

Can't display picture in CDetailView Yii 1.1

我正在学习PHP Yii 1.1 我正在尝试在创建新用户时上传图片并在视图中显示图片(在 CDetailView 中)。

在上传图片的过程中,我可以将图片的名称保存在数据库中,并将图片保存在banner文件夹中,该文件夹包含在protected文件夹中。

我现在想在视图中显示图片,我尝试了我找到的所有解决方案,但仍然无法正常工作。

<h1>View User #<?php echo $model->id; ?></h1>

<?php 
//die(Yii::app()->baseUrl . '/protected/banner/' . $model->picture);
  $this->widget('zii.widgets.CDetailView', array(
      'data'=>$model,
      'attributes'=>array(
          'id',
          'username',
          'address',
          'email',
           array(
             'name'=>'picture',
             'type'=>'raw',
             'value'=>CHtml::image(Yii::app()->baseUrl . '/protected/banner/' . $model->picture),
           )
      ),
)); ?>

我通过执行这个命令检查了图像 URL,它给了我保存图像的正确路径:

die(Yii::app()->baseUrl . '/protected/banner/' . $model->picture);

禁止访问 protected 目录以保护您应用程序的所有内部文件。如果你想 link 到它里面的文件,你需要在 protected 目录之外创建这个目录:

   array(
     'name'=>'picture',
     'type'=>'raw',
     'value'=>CHtml::image(Yii::app()->baseUrl . '/banner/' . $model->picture),
   )