方法Illuminate\Http\Request::validated不存在



我尝试使用验证系统,但给了我错误Method IlluminateHttpRequest::validated does not exist

fileController.php

public function store(Request $request)
{
$this->validate($request, [
'titre' => ['bail','required_without:titre', 'string','min:3', 'max:255'],
'name' => ['bail','required_without:name', 'string','min:3', 'max:255'],
]);
$file= new File($request->validated());
$file->save();
return Redirect::to("/")
->withSuccess('Great! file has been successfully uploaded.');
}

IlluminateHttpRequest上没有validated方法。该方法仅在FormRequest上(因为您不是在FormRequest中调用validate方法的人,所以它是为您完成的,需要有一种方法来获取数据(。

您在控制器上调用的validate方法返回经过验证的数据。

$validated = $this->validate(...):

这是@lagbox答案的另一种方式,在Laravel的验证文档中,您将看到这一点。

$validated = $request->validated();

$validated = $validator->validated();

你可以试试下面的方法。

$validator = Validator::make($request->all(), [
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);
$validated = $validator->validated();

相关内容

  • 没有找到相关文章

最新更新