2012-11-11 88 views
0

這可能是一個非常簡單的路線。Laravel路線屬性功能

我有一個索引函數,它可以根據傳遞給它的可選參數列出所有內容或特定項目。

我對控制器這條路線:

Route::controller('movies/(:any)'); 

我想它重定向到與位置參數的影片索引功能。 我不希望人們必須鍵入: www.site.com/movies/index/2 而是 www.site.com/movies/2

我已經嘗試了問號任何陣列中'關閉'功能(我認爲這是正確的術語),以便我重定向。

封閉的嘗試是這樣的:

Route::controller('movies/(:any?)',function($id){ 
    return Redirect::to("movie/index/$id"); 
}); 

這給了我一個404錯誤。 我在做對吧?

回答

1

你不想在你的路線上弄虛作假,讓控制器決定做什麼。

路線:

Route::get('movies/(:any)', '[email protected]'); 

控制器:

class Movies_Controller extends Base_Controller { 

    public $restful = true; // i have this line on my Base_Controller 

    function get_index($id = null) 
    { 
     if(! is_null($id)) 
     { 
      // return the movie 
     } 

     // return all movies 
    } 
} 
+0

的那一個。沒意識到你可以這樣路線。也不是你必須將RESTful聲明爲true。謝謝你的幫助。 – jaget

+0

@jaget if(:any)does not for you,try(:any?) – afarazit