YII2 表单文件上传 跳过验证validate
2020-04-30 本文已影响0人
阿_莫西林
问题:
如果按照上述单独上传文件的方法,在一个表单里有其他字段要提交,没有文件上传,则会报错。
$file = UploadedFile::getInstance($model, 'purchaseFile');//没有文件上传时,会报错。
$path = date('Y-m-d', time());
$model->purchaseFile = $file->baseName . '.' . $file->extension;//以下是正常的保存步骤,就不列出了。
解决:
$file = UploadedFile::getInstance($model, 'purchaseFile');
if($file!= null){ //不能对$file属性进行判断。尝试过判断$file->name 失败。
$path = date('Y-m-d', time());
$file->saveAs('../uploads/purchaseFile/' . $path);
$model->purchaseFile = $file->baseName . '.' . $file->extension;
}