设置一个简单的get请求似乎抛出一个http错误,这是我的代码到目前为止:
链接:
<a href="{{ route('account.single', ['id' => $account->id]) }}">
路线:
Route::get('/admin/overview/{id}', [
'uses' => '\App\Http\Controllers\AdminController@getSingle',
'as' => 'account.single',
'middleware' => ['auth', 'admin'],
]);
在网址中显示为 - admin/overview?id=5
控制器:
public function getSingle($id)
{
return view('admin.account');
}
这是我得到的错误 - notFoundHttpException in RouteCollection.php line 161:
请注意,如果我从路由网址中删除了/overview/
,那么它显示为/admin/{id}
它可以正常工作,但是get请求找不到它从网址
答案 0 :(得分:0)
正如Jonathon的评论中所提到的,您的路线的网址确实应该显示为/admin/overview/5
,而不是/admin/overview?id=5
。
确定您需要的问题:
php artisan route:clear
routes.php
文件的其他路线上点击,例如admin/{some_variable}
。您可以使用php artisan route:list
查看Laravel正在寻找的路线列表routes.php
文件中的顺序,将具有较高特异性的路线置于特异性较低的路线之上(例如,如下所示)。Route::get('/admin/overview/{id}', [
'uses' => '\App\Http\Controllers\AdminController@getSingle',
'as' => 'account.single',
'middleware' => ['auth', 'admin'],
]);
Route::get('/admin/{some_variable}', [
'uses' => '\App\Http\Controllers\AdminController@getSomething',
'as' => 'account.something',
'middleware' => ['auth', 'admin'],
]);
答案 1 :(得分:-2)
您的网址不正确。你应该建立这样的URL:
/管理/概览/ 2
要使用laravel辅助函数:
route('account.single',['id'=&gt; 2])