哑剧验证在 Laravel 中无法正常工作

Muh*_*mad 4 validation laravel laravel-5

我的网页包含一个要上传的文件,我希望上传的文件只能是 pdf、doc 或 docx。

我的表单标签也有 enctype="multipart/form-data"

我的 html 看起来像:

<div id="cv_upload" class="row">
    <div class="col-xs-12">
          <input type="file" name='cv'>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

与此相关的 $rules 数组如下:

'cv' => 'mimes:application/pdf,application/doc,application/docx|required'
Run Code Online (Sandbox Code Playgroud)

最后我的消息看起来像:

'cv.required' => 'A selection for C.V. is required before proceeding.',
'cv.mimes' => 'CV must be of the following file type: pdf, doc or docx.'
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,即使在我上传了 pdf 或 doc 之后,我收到的消息也是必需的。我不知道为什么这不能按预期工作。我也尝试删除“应用程序/”,但也没有成功。请帮忙。

小智 17

确保您的表单具有属性enctype="multipart/form-data"

此外,如果您使用mimes验证,则格式必须为'mimes:jpeg,bmp,png' https://laravel.com/docs/5.6/validation#rule-mimes

您可以在此处阅读有关 enctype 属性的信息:enctype='multipart/form-data' 是什么意思?


wba*_*ail 0

在表格中尝试放置files="true"
在验证器中尝试放置验证,例如required|mimes:doc,docx,pdf

https://laravel.com/docs/5.4/validation#rule-mimes

编辑:当你使用 时mimes:application/doc,实际上是mimetypes:application/doc