Загрузка файла с помощью Yii's ActiveForm - PullRequest
1 голос
/ 31 августа 2010

Я пытаюсь использовать ActiveForm Yii для создания базовой страницы регистрации с полем загрузки изображений. Однако я сталкиваюсь с проблемами. Я использую следующий код для создания тегов формы:

$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 для создания многочастной формы с возможностью загрузки файлов? Какой формат я должен следовать для этого? Я не могу найти ответы в документации или на форумах.

Спасибо!

1 Ответ

17 голосов
/ 31 августа 2010

Неважно.Я нашел решение для этого.Хитрость в том, чтобы использовать htmlOptions так:

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