首页 > 解决方案 > 如何创建一个可以由经过身份验证的用户和未经身份验证的用户访问的页面

问题描述

我试图了解如何创建一个可以由经过身份验证的用户和未经身份验证的用户访问的页面。经过身份验证的用户将具有不同的标题(可能还有不同的母版页),并带有指向用户配置文件的链接等。

如果我为非注册用户创建一个新的母版页,我如何配置 laravel 5.2 以仅在用户未注册时才显示此母版页?是在路线层面吗?

我的注册页面有以下路线:

Route::get('/', function () {
    return view('welcome');
})->name('home')->middleware('guest');

标签: phplaravel

解决方案


如果您想向所有具有不同标题的用户显示同一页面,具体取决于身份验证,您可以在.blade.php文件中使用刀片指令:

@auth
    @include('here include auth header file')
@endauth

@guest
    @include('here include guest header file')
@endguest

并且不要使用authorguest中间件,这将限制经过身份验证或未经过身份验证的用户的访问

Route::get('/', function () {
    return view('welcome');
})->name('home'); // ->middleware('guest');

推荐阅读