rka*_*yan 11 laravel laravel-4 laravel-routing
我是laravel的新手,
我在我的控制器的__construct中有代码
if(Auth::check())
{
return View::make('view_page');
}
return Redirect::route('login')->withInput()->with('errmessage', 'Please Login to access restricted area.');
Run Code Online (Sandbox Code Playgroud)
它的工作正常,但我想要的是.将这些编码放在每个控制器中真的很烦人,所以我希望将这个验证Auth和重定向到一个地方的登录页面,可能在router.php或filters.php.
我已经阅读了论坛以及中的一些帖子stackoverflow,并添加了filters.php类似下面的代码,但这也无法正常工作.
Route::filter('auth', function() {
if (Auth::guest())
return Redirect::guest('login');
});
Run Code Online (Sandbox Code Playgroud)
请帮我解决这个问题.
luk*_*ter 35
使用内置auth中间件.
Route::group(['middleware' => ['auth']], function() {
// your routes
});
Run Code Online (Sandbox Code Playgroud)
对于单一路线:
Route::get('profile', function () {
// Only authenticated users may enter...
})->middleware('auth');
Run Code Online (Sandbox Code Playgroud)
那已经内置于laravel.请参阅auth过滤器filters.php.只需将前过滤器添加到您的路线即可.最好使用一个组并将其包裹在受保护的路径周围:
Route::group(array('before' => 'auth'), function(){
// your routes
Route::get('/', 'HomeController@index');
});
Run Code Online (Sandbox Code Playgroud)
或者对于单一路线:
Route::get('/', array('before' => 'auth', 'uses' => 'HomeController@index'));
Run Code Online (Sandbox Code Playgroud)
要更改重定向网址或发送消息,只需filters.php根据自己的喜好编辑过滤器.
| 归档时间: |
|
| 查看次数: |
30409 次 |
| 最近记录: |