在Laravel 8中,可以通过以下步骤在验证失败后返回输入:
validate
方法对输入进行验证。例如,假设我们要验证一个表单中的name
字段:public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required',
]);
// 验证通过,继续处理逻辑
// ...
}
withErrors
方法将错误信息传递给视图:public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required',
]);
// 验证通过,继续处理逻辑
// ...
return redirect()->back()->withErrors(['name' => '验证失败,请重新输入']);
}
old
函数获取上一次请求的输入值,并使用@error
指令显示验证错误信息。例如:<form action="/store" method="POST">
@csrf
<input type="text" name="name" value="{{ old('name') }}" />
@error('name')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
<button type="submit">提交</button>
</form>
以上代码中,old('name')
会获取上一次请求中name
字段的值,并将其填充到输入框中。@error('name')
会检查是否有名为name
的验证错误,并显示错误信息。
这样,在验证失败后,用户将被重定向回之前的页面,并且输入框中将显示上一次输入的值,同时显示相应的验证错误信息。
对于Laravel 8的更多信息和使用方法,可以参考腾讯云的Laravel 8 文档。
领取专属 10元无门槛券
手把手带您无忧上云