我目前正试图找出Laravel中的URL路由,我已经有了基本页面,但我正在尝试找出区分来宾和成员的最佳方法。
目标是为访客提供索引页面用户启动视图,如果用户已登录,则使用仪表板视图。
像这样:
Route::group(array('before' => 'guest'), function()
{
Route::get('/', function()
{
return View::make('splash');
}));
});
Route::group(array('after' => 'auth'), function()
{
Route::get('/', function()
{
return View::make('dashboard');
}));
});
目前这不起作用,因为即使用户未登录,它似乎总是尝试显示经过身份验证的'after' => 'auth'
页面?
答案 0 :(得分:1)
如果您想要同一路线的不同视图,具体取决于是否登录,您只需定义路线一次,然后在闭包检查中查看用户是否已登录,然后返回相关视图
Route::get('/', function()
{
if (Auth::check())
return View::make('dashboard');
return View::make('splash');
}
答案 1 :(得分:0)
这样的事情可能让你更接近解决方案,但它仍然无法运行,还有更多的工作要做,然后只显示视图。此外,如果您想在auth用户和访客用户的路由'/'上显示不同的内容,则无法使用过滤器。
Route::group(array('before' => 'guest'), function()
{
Route::get('login', function()
{
return View::make('users.login');
}));
});
//~ Route::group(array('before' => 'auth'), function()
//~ {
Route::get('/', function()
{
// if user is logged in
if (Auth::check())
return View::make('dashboard');
else
return View::make('splash');
}));
//~ });