Route::post('order', 'OrderController@store')->name('order');
当我浏览到URLhttp://127.0.0.1:8000/order
时,它显示错误:
此路由不支持GET方法。支持的方法:POST。
这是正确的。
但是我想将用户重定向到主页,而不是显示此错误。
首先要注意的是,您试图做的事情似乎是对Laravel的反模式应拒绝使用错误方法访问路由
我目前不知道如何更改处理错误方法错误的默认方式,我也不建议这样做。但你可以绕过它:
修补
方法1
保持你的路线文件干净,但更改原始路线线,并在控制器方法的开头添加一些线
Route::match(['get', 'post'], 'order', [OrderController::class, 'store'])->name('order');
public function store(Request $request)
{
if ($request->isMethod('get')) {
return to_route('home');
}
// ...
方法2
保持控制器清洁,但在路线文件中添加一行
Route::get('order', fn () => to_route('home'));