2014-01-15 27 views
1

我不確定我應該使用的術語,所以請耐心等待,希望如果我沒有這個權利,有人可能會挑逗出正確的問題!Laravel 4資源路徑和身份驗證

確定..所以我有

Route::resource('gameworlds', 'GameworldsController'); 

,這是好的。可以按照您的預期創建,編輯,編制索引和顯示,並且它們都可以正常工作。我想這樣做是隻允許訪問「創造」的一部分,當用戶登錄

例如..我有我的routes.php文件文件另一條路線:

Route::get('dashboard', array('before' => 'auth', function() 
    return View::make('dashboard/index'); 
})); 

這按預期工作,但我並不真正瞭解如何將類似的代碼放在資源路徑中,僅用於「創建」部分。有人可以向我解釋那部分嗎?

非常感謝。

DS

回答

1

那麼你並不需要一個過濾器,而是可以使用驗證檢查的方法來檢查,如果用戶登錄或不:

if (Auth::check()) { //Logged in } 

在你的控制器的方法,使確保用戶登錄,如果他不是你可以做一個重定向,如:

return Redirect::to('user/login'); 

但是,如果你想使用的過濾器,你可以在的__construct使用beforeFilter方法你控制器如下:

public function __construct() 
    { 
     $this->beforeFilter('auth', array('on' => array('create'))); 
    } 
+0

完美。謝謝。我真的不明白你會使用的時間。我是一個新手,所以我很快就能掌握它。在此期間,我將閱讀更多的材料。非常感謝。 – dstewart101