Laravel - 一条路线的多个网址

Lov*_*ock 2 model-view-controller routes laravel

无法找到任何相关内容,但我确信它很简单.

当我使用url更改查询时,我有一个需要复制4次的路由.

目前:

Route::get('/', function()
{
  $builds = Blog::findBuilds();
  return View::make('pages/home', compact('builds'));  
});
Run Code Online (Sandbox Code Playgroud)

我想做的是例如:

Route::get(array('/', '/trending', 'staff-picks'), function()
{
  $builds = Blog::findBuilds();
  return View::make('pages/home', compact('builds'));  
});
Run Code Online (Sandbox Code Playgroud)

但那当然不行.什么诀窍?

luk*_*ter 5

正如Laravelian的回答所示,您可以而且应该使用动态路由参数.但是,如果你这样做

Route::get('{slug?}', function($slug = null){}
Run Code Online (Sandbox Code Playgroud)

你将捕获每个请求(除了匹配在此之前定义的路由的请求)

要获得更多控制,请使用正则表达式:

Route::get('{slug?}', function($slug = 'index')
{
    $builds = Blog::findBuilds();
    return View::make('pages/home', compact('builds'));  
})->where('slug', '(trending|staff-picks)');
Run Code Online (Sandbox Code Playgroud)

现在slug必须是:nothing(因为它是一个可选参数{...?})trending或者staff-picks