File upload 使用Yii'上传文件;s活性形式

File upload 使用Yii'上传文件;s活性形式,file-upload,yii,File Upload,Yii,我正在尝试使用Yii的ActiveForm创建一个带有图像上传字段的基本注册页面。然而,我遇到了问题。我使用以下代码创建表单标记: $form=$this->beginWidget('CActiveForm', array( 'id'=>'activity_form', 'enableAjaxValidation'=>true,

我正在尝试使用Yii的ActiveForm创建一个带有图像上传字段的基本注册页面。然而,我遇到了问题。我使用以下代码创建表单标记:

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true, 
                                'enctype'=>'multipart/form-data'
                                ));
上述代码在Yii中生成以下错误消息:

未定义属性“CActiveForm.enctype”

我也试过:

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true, 
                                array('enctype'=>'multipart/form-data')));
以及:

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true), 
                                array('enctype'=>'multipart/form-data')));
但这两种方法都不管用

有没有关于什么地方可能出错的想法?我可以使用beginWidget创建具有文件上载功能的多部分表单吗?我应该采用什么样的格式?我似乎在文档或论坛中找不到任何答案


谢谢

没关系。我找到了解决办法。诀窍是使用htmlOptions,如下所示:

$this->beginWidget('CActiveForm', array(
  'id'=>'activity_form', 
  'enableAjaxValidation'=>true, 
  'stateful'=>true, 
  'htmlOptions'=>array('enctype' => 'multipart/form-data')
));

没关系。我找到了解决办法。诀窍是使用htmlOptions,如下所示:

$this->beginWidget('CActiveForm', array(
  'id'=>'activity_form', 
  'enableAjaxValidation'=>true, 
  'stateful'=>true, 
  'htmlOptions'=>array('enctype' => 'multipart/form-data')
));