我是这只幼虫的新手。
我遵循了教程,并且检查了自己是否做错了什么,然后出现此错误。在这段代码中,我尝试从表Inputs中读取数据,并创建一个页面以将数据插入Inputs表中的数据库。
TicketController:
public function index(){
$inputs = Inputs::all();
return view('index', [
'inputs' => $inputs
]);
}
public function create(){
return view('create');
}
public function store(Request $request)
{
$inputs = new Inputs();
$inputs->inputName = $request->inputName;
$inputs->inputAddress = $request->inputAddress;
$inputs->inputBDO = Carbon::parse($request->inputBDO);
$inputs->inputEmail = $request->inputEmail;
$inputs->inputPhone = $request->inputPhone;
$inputs->inputJob = $request->inputJob;
$inputs->save();
return redirect('/input');
}
}
路线:
Route::get('/', 'TicketController@index');
Route::get('/input/create', 'TicketController@create');
Route::post('/input', 'TicketController@store');
答案 0 :(得分:2)
在laravel MethodNotAllowedHttpException
中,当您引用的路由不可用或路由类型不匹配时会出现。在您的情况下,问题是相同的,并且是:
return redirect('/input');
&
Route::post('/input', 'TicketController@store');
在您第一次发布from时,route方法匹配,但是在重定向时,它正在寻找:
Route::get('/input', 'TicketController@store');
不存在,这就是错误的原因。
答案 1 :(得分:1)
您将在/input
函数的末尾重定向回store()
。重定向是通过GET
请求完成的,但是只有一个POST
路由分配给了该URL。
Route::post('/input', 'TicketController@store');