这段代码几天前还可以工作,但我似乎做了一些事情导致它崩溃。
我有这条路线:
Route::post('admin/routemanagement', 'AdminController@addRoute');
看起来像这样:
public function addRoute(Request $request) {
if(Auth::check()) {
$rules = [
'flightDep' => 'required',
'flightArr' => 'required',
'flightDepTime' => 'required',
'flightArrTime' => 'required',
];
$messages = [
'flightDep.required' => 'A departure ICAO is required',
'flightArr.required' => 'An arrival ICAO is required',
'flightDepTime.required' => 'A departure time is required',
'flightArrTime.required' => 'An arrival time is required'
];
$validator = $this->validate($request, $rules, $messages);
if($validator->fails()) {
return redirect('admin/routemanagement')->withErrors($validator)->withInput();
}
}
然而,当这段代码运行时,$validator
由于某种原因,变量最终为空,我得到以下结果:
Call to a member function fails() on null
来自 Laravel 文档:
“...如果验证失败,将自动生成正确的响应。如果验证通过,我们的控制器将继续正常执行。” (https://laravel.com/docs/5.2/validation https://laravel.com/docs/5.2/validation)
所以这里下面的代码是不必要的:
if($validator->fails()) {
return redirect('admin/routemanagement')->withErrors($validator)->withInput();
}
如果验证失败,Laravel 会自动响应,如果成功,则其余代码将正常执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)