这是我的观看代码:
<?php
$form=$this->beginWidget('CActiveForm',array(
'id'=>'user-form',
'enableClientValidation'=>'true',
'clientOptions' => array(
'validateOnSubmit'=>true),
'htmlOptions'=>array('enctype'=>'multipart/form-data'),
)
);?>
<div class="row">
<?php echo $form->labelEx($model,'profile_image');?>
<?php echo $form->fileField($model,'profile_image');?>
<?php echo $form->error($model,'profile_image');?>
</div>
&安培;这是验证规则:
public function rules()
{
return array (array('profile_image','file','types'=>'jpg','allowEmpty'=>true),
);
}
但是,它没有显示文件上传的任何验证。任何人都可以告诉我代码中的错误。
答案 0 :(得分:1)
在Controller中尝试使用类似的内容进行验证
$model = new YourModel();
if(isset($_POST['YourModel']))
{
$model->profile_image= CUploadedFile::getInstance($model, 'profile_image');
if($model->validate())
{
// do your task here
}
}
希望这会对您有所帮助:)