Laravel:\组件\ HttpKernel \异常\ MethodNotAllowedHttpException没有消息

时间:2018-07-02 06:51:23

标签: php laravel web

我是这只幼虫的新手。

我遵循了教程,并且检查了自己是否做错了什么,然后出现此错误。在这段代码中,我尝试从表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');

2 个答案:

答案 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');