我正在尝试 Laravel 5.8 的请求验证。我成功地返回了错误并将其显示在我的视图中。问题是当我尝试不触发任何验证规则时,无论出于什么原因,我都无法向表中插入记录。
错误信息
函数 App\Http\Requests\FieldRequest::Illuminate\Foundation\Providers{closure}() 参数数量过少,需要 1 个,实际上未传递任何参数。
控制器
class FormController extends Controller
{
public function create()
{
return view('create');
}
public function store(FieldRequest $req)
{
$validate_data = $req->validate();
Form::create($validate_data);
return redirect()->back()->with('message', 'Success!');
}
}
FormRequest
class FieldRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'item_name' => 'bail|required|max:255',
'sku_no' => 'required|alpha_num',
'price' => 'required|numeric',
];
}
public function messages()
{
return [
'item_name.required' => 'An Item Name is required',
'sku_no.required' => 'An SKU NO is required',
'price.required' => 'The price is required',
];
}
}
我希望往我的表格里插入数据。为了实现这一目标,我是否需要在控制器中执行验证操作?提前感谢您的回答!