提交表单并通过ValidateTicketData extends FormRequest
类中定义的验证后,您将到达一个显示表单输入的站点。
还有一个<input type="file" />
用于上传文件。
此验证规则在ValidateUploadedFile extends FormRequest
-Class中定义。
文件通过验证后,应该显示类似“文件已成功上传”之类的信息。
这是控制器方法:
public function store(ValidateFormData $request, ValidateUploadedFile $requestFile, $param = '')
{
$validated = $request->validated();
$formData = $request->all();
if ($requestFile->hasFile('file')) {
$file = $requestFile->file('file');
if ($file->validated()) {
$filename = uniqid() . $file->getClientOriginalName() . '.' . $file->getClientOriginalExtension();
$file->storeAs('store', $filename);
$file->move(public_path('store') . $filename);
}
}
return view('/validation', compact('formData'));
}
我在想这样的事情。
如果我忽略了$ requestFile ...的一部分(以便Controller看起来像这样:)
public function store(ValidateFormData $request, $param = '')
{
$validated = $request->validated();
$formData = $request->all();
return view('/validation', compact('formData'));
}
...效果很好。
显示带有已验证表单输入的“ validation”站点。
我以某种方式认为这与第二个Request类$requestFile
有关,但是我真的不知道该怎么做。
由于只有在验证表单数据之后才能验证文件,因此我需要两个单独的Request类。
我希望有人可以帮助我。