Cześć,
czy wspaniałe Yii umożliwia szybki i łatwy upload plików za pomocą technologi ajax?.
Mój kod wygląda następująco:
$form = $this->beginWidget('bootstrap.widgets.BsActiveForm', array(
'id' => 'comment-form',
'htmlOptions' => array('enctype' => 'multipart/form-data'),
));
?>
<?php echo $form->errorSummary($model); ?>
<?php echo $form->hiddenField($model, 'parent_id', array('type' => 'hidden')); ?>
<?php echo $form->hiddenField($model, 'task_id', array('type' => 'hidden')); ?>
<?php echo $form->textAreaControlGroup($model, 'context', array('rows' => 6)); ?>
<?php
$this->widget('CMultiFileUpload', array(
'attribute' => 'file',
'name' => 'file',
'denied' => 'Whoops! We weren\'t able to upload your file!',
'duplicate' => 'Whoops! This was a duplicate file',
'htmlOptions' => array('multiple' => 'multiple')));
?>
<?php
echo BsHtml::ajaxSubmitButton(Yii::t('app', 'create.button'), CHtml::normalizeUrl(array('comment/create')), array(
'type' => 'POST',
'success' => 'function(data) {'
. 'if(data.length > 0) { $(".task-comment-wrapper").html(data);'
. 'app.comments.form.addListener().renderForm();}}'
), array('class' => 'button-comment'));
?>
File bez odpowiedniego content-type nie zostanie wysłane tyle, że jak wysyłam też zwykły tekst. Wiem, że można, to zrobić za pomocą JSa używając obiektu FormData, ale czy Yii czasem nie udostępnia czegoś szybszego?.