2014-07-05 212 views
2

我一直在嘗試一段時間才能讓laravel路由到我的控制器操作。 我不確定在laravel框架中做到這一點的最佳方式。Laravel路由到控制器操作

如何在我腦海中描繪它是這樣的。

我有一個路由設置來鏈接到我的控制器操作。所以當我輸入domain.com/Home/Profile 它會調用HomeController的配置文件操作。這將做一些處理並在頁面上顯示視圖。 (像mvc4)

我可能會採取這種錯誤的方式,但我只是試圖避免爲每個視圖做出路線。我更關注這個問題的正確方法,或者任何laravel開發人員作爲標準實踐所做的事情,因爲對於每個視圖都有一條路線感到很奇怪。

到目前爲止,這是我的代碼:routes.php文件

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

Route::any('/{controller}/{action?}', function ($controller, $action = 'index') 
{ 
    $class = $controller.'Controller'; 
    $controller = new $class() 

    return $controller->{$action}(); 

}); 

的HomeController:

class HomeController extends BaseController 
{ 
    protected $layout = 'layouts.master'; 


    public function index() 
    { 
     $this->layout->content = View::make('index'); 
     return View::make('index'); 
    } 

    public function profile() 
    { 
     $this->layout->content = View::make('profile'); 
    } 
} 

感謝提前任何幫助。

回答

0

發現,我工作的答案。這是寧靜的控制器

我註冊控制器這一行

Route::get('/', '[email protected]'); 
Route::controller('/', 'HomeController'); 

而且改變了我的控制器行動getProfile()

+0

如果我有參數?如何用參數調用動作? 例如: '''Route :: get('/ home/{id}','HomeController @ index');''' –