我想在登录和注册页面上应用过滤器,因此已经登录的用户将被重定向到索引页面。这是路线:
Route::controller('users', 'UsersController');
以下是UserController中的beforeFilters:
public function __construct()
{
$this->beforeFilter('guest', ['on' => 'getLogin']);
$this->beforeFilter('guest', ['on' => 'getRegister']);
}
以下是getLogin操作:
public function getLogin()
{
return View::make('users/login');
}
过滤器本身(filters.php):
Route::filter('guest', function()
{
if (Auth::check()) return Redirect::to('/');
});
但是,当我已经登录并尝试访问登录页面或注册页面时,我没有重定向到'/'。可能是什么问题?
答案 0 :(得分:2)
'on'
实际上是用于指定HTTP谓词。试试这个:
$this->beforeFilter('guest', ['only' => ['getLogin', 'getRegister']]);