2013-01-31 164 views
0

我是Laravel 4的新手,我很難掌握路線。我有一個前臺到我的網站和一個後端。我想在example.com/dashboard/...下顯示後端發生的所有事情。我也想用足智多謀的控制器。我需要在routes.php中設置哪些設置,以便我始終可以引用我的users控制器,但是在URL中的所有情況下都會發生在dashboard之下?Laravel 4路線

例子:

我鏈接到users/edit/1但在URL看起來像example.com/dashboard/users/edit/1。信息中心應該有一個索引頁面(因此example.com/dashboard實際上顯示一個頁面),但所有其他URL都附加到該頁面。

回答

3

我認爲這在Larvel 4 Documentation中覆蓋得很好。

除非我的誤解,這應該得到你想要的結果你的榜樣情況:

Route::get('dashboard', '[email protected]'); 
Route::get('dashboard/users/edit/{id}', '[email protected]'); 
etc. 

//編輯

另外,使用封閉的回調,你可以這樣做這個:

Route::get('dashboard/users/{var1}/{var2?}', function($var1, $var2 = null) 
{ 
    $controller = new UsersController; 
    return $controller->{$var1}($var2); 
}); 

哪個不需要你指定每一個路徑。或者,正如我在下面的評論中提到的,如果它符合您的需求,您可以使用Resource Controller

+0

是的,我知道我可以鏈接到'儀表板/用戶/ ...'。我想我問的是,如果有可能讓UsersController從'/ dashboard/users/...'而不是'/ users/...'工作,而不必顯式鏈接到'/ dashboard/users/......'無處不在。 – user2030045

+0

也許將它指定爲[資源控制器](http://four.laravel.com/docs/controllers#resource-controllers)會對你有用嗎? '路線::資源('儀表板/用戶','UsersController');' – micflan

+0

編輯我的答案包括一個替代解決方案,我認爲可能更接近你要找的東西。 – micflan