gpt4 book ai didi

php - 如果表单验证失败,则使用自定义请求类重定向回输入(laravel 5.8)

转载 作者:行者123 更新时间:2023-12-02 03:09:33 24 4
gpt4 key购买 nike

问题是我想在验证失败时返回输入。在这里,我使用自定义请求类来验证用户输入。

Now my question is where i place this piece of code on Controller Or in Request class.
or is there another way to do it?

这是我想使用的代码:返回重定向()->back()->withInput();

这是 Controller :

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Requests\Admin\counter\CreateCounterRequest;
use App\Models\Admin\Counter;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class CounterController extends Controller
{
public function store(CreateCounterRequest $request)
{
Counter::create([
'title' => $request->title,
'ion_icon' => $request->ion_icon,
'counter_value' => $request->counter_value,
]);
session()->flash('success', 'Counters created successfully.');
return redirect(route('counter.index'));
}
}

这是请求类:

<?php

namespace App\Http\Requests\Admin\counter;

use Illuminate\Foundation\Http\FormRequest;

class CreateCounterRequest extends FormRequest
{
public function rules()
{
return [
'ion_icon' => 'required',
'title' => 'required',
'counter_value' => 'required|numeric',
];
}

}

最佳答案

您可以使用FormRequest类中的方法,即failedValidation()方法。

示例代码如下:

protected function failedValidation(Validator $validator)
{
return back()->withErrors($validator)->withInput();
}

您必须将 Illuminate\Contracts\Validation\Validator 类中的参数添加到您的方法 failedValidation 中,并添加 Illuminate\Http\RedirectResponse 类用于获取重定向方法。

添加Illuminate\Validation\ValidationException类,如果没有,你的方法将无法被读取。

关于php - 如果表单验证失败,则使用自定义请求类重定向回输入(laravel 5.8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58046069/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com