有什么方法可以阻止用户登录后访问访客页面?我尝试使用来宾中间件bt没有任何反应。我有两组警卫:RESTAURANT和CUSTOMERS。客户登录后,我不希望他们在注销前访问访客页面。
Route::group(['middleware' => 'guest'], function () {
Route::get('/home', 'HomeController@index')
->name('home'); // This is a guest page
});
我的客户页面也受到客户保护的保护。
Route::name('customer.')->middleware(['auth:customer', 'verified'])
->group(function () {
Route::get('/logout', 'Auth\CustomerLoginController@logout')->name('logout');
});
首先,我以客户保护人员身份登录。之后,当我键入“ / home”时,正在加载主页。我想阻止已登录的用户访问访客页面。
答案 0 :(得分:1)
创建一个中间件并在其中执行以下代码。
if (Auth::user()){
// if user HAS authenticated already,
// redirect him to somewhere or die(),
// or any other appropriate action
}
在路由上应用中间件
Route::group(['middleware' => ['guest','middlewareName']], function () {
Route::get('/home', 'HomeController@index')
->name('home'); // This is a guest page
});
它将起作用
答案 1 :(得分:0)
为什么不只在来宾页面上使用Auth::user()
检查?
if (Auth::user()){
// if user HAS authenticated already,
// redirect him to somewhere or die(),
// or any other appropriate action
}