【发布时间】:2018-03-11 22:06:48
【问题描述】:
我有用户警卫(名称为web)和管理员警卫(名称为admin)。因此,为了显示/隐藏内容,我使用 Laravel 刀片指令 @auth('web') 或 @auth('admin') 但不知何故 @guest 不起作用,所以我不得不像这样使用:
@auth('admin')
<li>Dashboard</li>
<li>Log out</li>
@endauth
@auth('web')
<li>Create Post</li>
<li>Log out</li>
@endauth
@guest('admin')
@guest('web')
<li>Contact</li>
<li>About us</li>
@endguest
@endguest
我嵌套了来宾指令,但感觉太多了,有什么更好的方法吗?
【问题讨论】:
-
你真的有两个级别的Guest吗?您如何确定未经身份验证的用户是否为管理员???
-
不,我的意思是我有三个警卫:web(用于用户)、api(我不使用这个)和 admind(用于管理员)。我想为未经身份验证的用户(无论是用户还是管理员)显示联系方式和关于我们的信息。但是,如果我单独使用 @guest 而不使用 ('admin') 或 ('web'),它会显示给所有人:来宾、用户和管理员
-
你使用的是什么版本的 Laravel?
-
使用 laravel 5.5.12
标签: php laravel laravel-blade