2016-02-12 77 views
0

我在routes.php文件中定義這個命名路線,Laravel 5命名路由錯誤

Route::get('/', [ 
    'as' => 'home', 
    'uses' => '[email protected]' 
]); 

然後我有這個在我的PagesController.php

public function home() { 
    return 'Welcome home!'; 
} 

我的問題是,爲什麼http://localhost:8000/home產生這個錯誤?

NotFoundHttpException in RouteCollection.php line 161: 
+0

請參閱本文檔,它將很好地解釋路由概念[鏈接](https://laravel.com/docs/5.2/routing#named-routes) – Kalanka

回答

4

您尚未創建鏈接/home一個route。您只創建了/路線。

爲了進一步解釋你的問題,你剛剛用home來命名你的路線。這意味着您可以在您的視圖中鏈接到{{url()->route('home')}}以轉到網址/,這將成爲您的主頁。您還可以使用url()->route('home')從任何控制器訪問此路線。

如果您想訪問頁面/home,您需要爲此創建一個路由。

如:

Route::get('/home', ['as'=>'NameUrRoute', 'uses'=>'[email protected]']); 

'as'=>'home'只是表明路由的名稱。不是URI

2

路線namehome因此您可以從控制器訪問它,或使用URL::route('home')查看。但URL中的實際地址是localhost:8000/